PHP での短く安全な配列トラバーサル

藏色散人
リリース: 2023-04-08 12:42:01
転載
2289 人が閲覧しました

PHP での短く安全な配列トラバーサル

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 サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート