Php 数组到sting转换通知。为什么?

Php 数组到sting转换通知。为什么?,php,Php,为什么我在第11行的/Applications/MAMP/htdocs/test2.php中得到数组到字符串的转换,注意 $users=array('aa-a', 'b-bb', 'cc-c'); foreach($users as $usr) { $var = htmlspecialchars(htmlspecialchars($usr)); $z = explode('-', $var); echo "$z \n"; } 搞不懂为什么我会得到这个,gettype($var)回显字符串 谢

为什么我在第11行的/Applications/MAMP/htdocs/test2.php中得到数组到字符串的转换,注意

$users=array('aa-a', 'b-bb', 'cc-c');

foreach($users as $usr)
{
$var = htmlspecialchars(htmlspecialchars($usr));
$z = explode('-', $var);
echo "$z \n";
}
搞不懂为什么我会得到这个,gettype($var)回显字符串


谢谢。

您的变量$z是一个新数组。当你试图

 echo "$z \n";
它将给出一个关于它是一个数组的消息。您可以改为使用以下内容显示$z:

echo '<pre>'.print_r($z,true).'</pre>';
echo''。打印($z,true)。'';

您的变量$z是一个新数组。当你试图

 echo "$z \n";
它将给出一个关于它是一个数组的消息。您可以改为使用以下内容显示$z:

echo '<pre>'.print_r($z,true).'</pre>';
echo''。打印($z,true)。'';

为什么要调用
htmlspecialchars()
两次?$z是一个数组,这就是explode()返回的内容您的代码段只有8行。很难知道第11行是哪一行。对不起,我没有公布全部内容。我知道$z是一个数组。通知是关于这一行的$z=explode('-',$var);出于某种原因,它没有爆炸$var。它认为它是一个数组。为什么?为什么要调用
htmlspecialchars()
两次?$z是一个数组,这就是explode()返回的内容您的代码段只有8行。很难知道第11行是哪一行。对不起,我没有公布全部内容。我知道$z是一个数组。通知是关于这一行的$z=explode('-',$var);出于某种原因,它没有爆炸$var。它认为它是一个数组。为什么?对不起,我没有把整件事都发出去。我知道$z是一个数组。通知是关于这一行的$z=explode('-',$var);对于某些年代,它不会爆炸$var。它认为它是一个数组。为什么?对不起,我没有把整件事都发出去。我知道$z是一个数组。通知是关于这一行的$z=explode('-',$var);对于某些年代,它不会爆炸$var。它认为它是一个数组。为什么会这样?