PHP 声明的含义以及如何重现它:
如果你将一个PHP数组发送到一个函数中,该函数需要一个类似:or的字符串,那么PHP解释器会将您的数组转换为文字字符串,抛出此通知并继续前进。例如:echo
print
Array
php> print(array(1,2,3))
PHP Notice: Array to string conversion in
/usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(591) :
eval()'d code on line 1
Array
在这种情况下,该函数将文本字符串:转储到 stdout,然后将通知记录到 stderr 并继续前进。print
Array
PHP 脚本中的另一个示例:
<?php
$stuff = array(1,2,3);
print $stuff; //PHP Notice: Array to string conversion in yourfile on line 3
?>
更正 1:使用 foreach 循环访问数组元素
http://php.net/foreach
$stuff = array(1,2,3);
foreach ($stuff as $value) {
echo $value, "\n";
}
指纹:
1
2
3
或与阵列键一起
$stuff = array('name' => 'Joe', 'email' => 'joe@example.com');
foreach ($stuff as $key => $value) {
echo "$key: $value\n";
}
指纹:
name: Joe
email: joe@example.com
请注意,数组元素也可以是数组。在这种情况下,要么再次使用,要么使用数组语法访问此内部数组元素,例如foreach
$row['name']
更正 2:将数组中的所有单元格连接在一起:
如果它只是一个普通的一维数组,你可以简单地使用分隔符将所有单元格连接成一个字符串:
<?php
$stuff = array(1,2,3);
print implode(", ", $stuff); //prints 1, 2, 3
print join(',', $stuff); //prints 1,2,3
更正 3:字符串化具有复杂结构的数组:
如果您的数组具有复杂的结构,但无论如何您都需要将其转换为字符串,请使用 http://php.net/json_encode
$stuff = array('name' => 'Joe', 'email' => 'joe@example.com');
print json_encode($stuff);
指纹
{"name":"Joe","email":"joe@example.com"}
快速浏览数组结构:使用内置的php函数
如果只想检查数组内容以进行调试,请使用以下函数之一。请记住,var_dump是其中最翔实的信息,因此通常为此目的是首选
例子
$stuff = array(1,2,3);
print_r($stuff);
$stuff = array(3,4,5);
var_dump($stuff);
指纹:
Array
(
[0] => 1
[1] => 2
[2] => 3
)
array(3) {
[0]=>
int(3)
[1]=>
int(4)
[2]=>
int(5)
}