php关联二维数组,php-检查关联二维数组
我有以下數(shù)組聲明
Array
(
[name] => 1
[callrate] => 1
[maxcalls] => 100000
[mintime] => 5
[maxtime] => 16
[skillexps] => Array
(
[0] => 1
[1] => 2
)
)
如何檢查數(shù)組包含的數(shù)組.我嘗試了
function is_multi($a) {
foreach ($a as $v) {
if (is_array($v))
{
return "has array";
break;
}
break;
}
return 'only value';
}
但這僅給出“唯一的價值”.我需要檢查如果關(guān)聯(lián)數(shù)組是二維的
感謝advacne
解決方法:
為什么您現(xiàn)有的代碼不起作用?
因為您要查找數(shù)組的每個元素以檢查它是否是數(shù)組,還是不使用foreach()和is_array()?如果沒有,那就休息;因此,當(dāng)它檢查name元素的值不是數(shù)組時,它只是一個整數(shù),因此立即中斷;并退出foreach()循環(huán)并僅返回值,但是當(dāng)我刪除多余的中斷時;從您的代碼來看,它工作正常,因為然后它檢查數(shù)組中的每個元素以驗證它是否包含數(shù)組.我還添加了一種很好的方法來檢查數(shù)組是否為多維.希望這可以幫助 :)
function is_multi($a) {
foreach ($a as $v) {
if (is_array($v))
{
return "has array";
break;
}
// removed extra break; from here
}
return 'only value';
}
要檢查數(shù)組是否是多維的?我會這樣
function is_multi(array $array) {
return count($array) !== count($array, COUNT_RECURSIVE);
}
$array = array
(
'name' => 1,
'callrate' => 1,
'maxcalls' => 100000,
'mintime' => 5,
'maxtime' => 16,
'skillexps' => array
(
1,
2
)
);
echo is_multi($array);
?>
標(biāo)簽:arrays,php
來源: https://codeday.me/bug/20191108/2008531.html
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的php关联二维数组,php-检查关联二维数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php的isset(),PHP isse
- 下一篇: php 获取汉字,php 获取汉字长度