PHP 配列トラバーサルを記述するときは、通常次のように記述します:
foreach ($definition['keys'] as $id => $val) { // ... }
しかし、実際には、これは重要な問題を引き起こします: if $defining['keys '] If定義されていない場合、この時点で配列変数(つまりforeach)にエラーが発生します。
推奨: 「php トレーニング 」
ここまで進みました:
if (!empty($definition['keys']) { foreach ($definition['keys'] as $id => $val) { // ... } }
これは非常に一般的ですか?外部に if 判定の別の層を含める必要があるだけです。これにより、安全な配列の走査が保証されます。
しかし、これは簡潔な要件を満たしていないため、PHP7 の便利さを利用して、次のように書くことができます:
foreach ($definition['keys'] ?? [] as $id => $val) { // ... }
とてもきれいですね! ははは、それではここで理解できますか? ? これは次のように理解できます:
$a = is_null($b) ? $default : $b; $a = $b ?? $default;
は is_null($b) 操作を実行するのと同じです。
プログラミング関連のコンテンツの詳細については、php 中国語 Web サイトの プログラミング入門 列に注目してください。
以上がPHP での短く安全な配列トラバーサルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。