我想從JSON附帶的數(shù)據(jù)中進(jìn)行比較。這就是我為它寫(xiě)的。$packages[0][0] = "5678"; // on the way$packages[0][1] = "3098"; // checkpoint$packages[0][2] = "4331"; // acceptif (array_key_exists($packages[0][2], $data[6])) { $packageID= 1;} else if (array_key_exists($packages[0][1], $data[6]) == true) { $packageID= 5; } else if (array_key_exists($packages[0][0], $data[6]) == true) { $packageID= 10; } else { $packageID=0;}例如 JSON:* Array ( [0] => xxx [1] => yyy [2] => xxx [3] => yyy [4] => xxx [5] => yyy [6] => Array ( [0] => 1234 [1] => 5678 [2] => 9012 ) )PackageID總是出來(lái)0。可能是什么原因?
1 回答

慕森卡
TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊
您正在使用array_key_exists(),但您應(yīng)該使用in_array(). 您正在搜索的值是元素,而不是鍵。
$packages[0][0] = "5678"; // on the way
$packages[0][1] = "3098"; // checkpoint
$packages[0][2] = "4331"; // accept
if (in_array($packages[0][2], $data[6])) {
$packageID= 1;
} else if (in_array($packages[0][1], $data[6]) == true) {
$packageID= 5;
} else if (in_array($packages[0][0], $data[6]) == true) {
$packageID= 10;
} else {
$packageID=0;
}
- 1 回答
- 0 關(guān)注
- 88 瀏覽
添加回答
舉報(bào)
0/150
提交
取消