php没有';t获取数组的结尾
php没有';t获取数组的结尾,php,Php,foreach不获取数组的结尾。我想在另一种方法中使用end of the: $array = array( "Language programings"=>array("php" => 100,"js" => 200),'html'=>12); foreach ($array as $kk=>$val1) { echo $kk.'<br/>'; foreach ($val1 as $key=>$val2)
foreach
不获取数组的结尾。我想在另一种方法中使用end of the:
$array = array(
"Language programings"=>array("php" => 100,"js" => 200),'html'=>12);
foreach ($array as $kk=>$val1)
{
echo $kk.'<br/>';
foreach ($val1 as $key=>$val2)
{
if (! end(array_keys($array)))
echo $val2;
}
echo end(array_value);//must be show 12
}
$array=array(
“语言编程”=>array(“php”=>100,“js”=>200),“html”=>12);
foreach($kk=>$val1的数组)
{
回声$kk.“
”;
foreach($val1作为$key=>$val2)
{
if(!end(数组_键($array)))
echo$val2;
}
echo end(数组_值);//必须显示为12
}
如果我理解正确,在If()语句中,您试图查看指针是否位于数组的末尾。不幸的是,在这种情况下,end()永远不会为false,因此行echo$val2;永远不会执行
试着替换
if (! end(array_keys($array)))
与
尝试使用以下代码:
$array = array("Language programings"=>array("php" => 100,"js" => 200),'html'=>12);
foreach($array as $key1 => $val1){
if(is_array($val1)){
echo $key1.'<br/>';
foreach($val1 as $key2 => $val2){
if(is_array($val2)){
foreach($val2 as $k => $v){
echo $v.'<br/>';
}
} else {
echo $val2.'<br/>';
}
}
}
}
echo end(array_values($array));
您真正想要做的是??foreach将始终迭代数组的所有元素,包括最后一个元素。这就是为什么它被称为forEACH。尝试一个常规的for循环。谢谢,在这段代码的结果中,html是附加的。而且没有出现
echo end(array_values($array));
$array = array("Language programings"=>array("php" => 100,"js" => 200),'html'=>12);
foreach($array as $key1 => $val1){
if(is_array($val1)){
echo $key1.'<br/>';
foreach($val1 as $key2 => $val2){
if(is_array($val2)){
foreach($val2 as $k => $v){
echo $v.'<br/>';
}
} else {
echo $val2.'<br/>';
}
}
}
}
echo end(array_values($array));
Language programings
100
200
12