我是PHP的新人..
我可以使用array_push将元素推送到数组中。它给出了这样的输出..
array(0) { }
array(1) { [0]=> string(28) "For all your PC requirements" }
array(2) { [0]=> string(28) "For all your PC requirements" [1]=> string(10) "Welcome to" }
我的代码是
if($msgIdFound == 1){
$parts = explode('msgid ', $line_of_text);
$fp = fopen("/home/bigc/Documents/msgids.csv","w");
array_push($msgIds,$m[1]);
$counter++;
var_dump($msgIds);
fputcsv($fp, $msgIds);
fclose($fp);
}
但是,我想要的数组看起来像这样。
array(array('满足您的所有PC要求'), 数组('欢迎光临'))
非常感谢任何帮助。
答案 0 :(得分:3)
你可以把
msgIds[] = array($m[1]);
而不是array_push(...)
答案 1 :(得分:0)
替换
array_push($msgIds,$m[1]);
与
if (!empty($m[1])) { // avoid empty stuff...
array_push($msgIds, array($m[1]));
}
这应该导致:
array(2)(
[0] =>
array(1){
[0] =>
string(28) "For all your PC requirements"
}
[0] =>
array(1){
[0] =>
string(10) "Welcome to"
}
)
答案 2 :(得分:0)
当您推送数组时,您正在推送一个字符串:
if($msgIdFound == 1){
$parts = explode('msgid ', $line_of_text);
$fp = fopen("/home/bigc/Documents/msgids.csv","w");
array_push($msgIds, array($m[1])); // you need to push an array
$counter++;
var_dump($msgIds);
fputcsv($fp, $msgIds);
fclose($fp);
}