Iは、例えば(キー番号は、ユーザ入力に依存して変化することができる)の下に、その中に格納された複数のアレイと、ポスト値に基づいて配列を格納している:多次元PHP配列の特定のキーと値をチェックする方法はありますか?
Array (
[1] => Array
([system] => A [serial]=> 12345L)
[3] => Array
([system] => B [serial] =>)
[4] => Array
([system] => D [serial] => 56789L [licence] => ABCD1-EFGH2-IJKL3-MNOP4-QRST5)
[5] => Array
([serial] => 98765L [licence] => 1234567890)
)
注:それは価値があるかどうかはわかりません上記の例では配列キーは1345ですが、123456または56などとなる可能性があります。
それぞれの配列にシステムキーとシリアルキーがあることを確認したいと思います両方とも価値があります。ライセンスキーはオプションです。
私の例では、1 & 4は有効ですが、3はシリアルの値が欠けているわけではなく、システムのキーがないため5もありません。
これは、配列の内側にあるため、私はこれについてどうやって行くのかが少し分かりません。しかし、私は非常に基本的で、私は非常に非効率的であると想像することができます以下を作った。
foreach($sys_arr as $k => $v) {
if (is_array($v) == true) {
foreach($v as $key => $value) {
if ($key = "system" && $value == null) {
echo "Error: System has no value<br>";
} elseif ($key = "serial" && $value == null) {
echo "Error: Serial has no value<br>";
} else {
echo "Both keys have values<br>";
}
}
if (!array_key_exists("system", $v)) {
echo "Error: No System Key<br>";
} elseif (!array_key_exists("serial", $v)) {
echo "Error: No Serial Key<br>";
} else {
echo "Both Keys exist!<br>";
}
}
}
私はこれをどのように改善することができるのですか?
のようなものは、あなたが出力あなたが必要とされなければならないものを提供してくださいすることができますか? –
問題は解決しましたか? :) –