ホームページ > バックエンド開発 > PHPチュートリアル > PHP で文字列パスを使用してネストされた配列データを動的に設定する方法

PHP で文字列パスを使用してネストされた配列データを動的に設定する方法

Patricia Arquette
リリース: 2024-12-11 09:48:10
オリジナル
430 人が閲覧しました

How to Dynamically Set Nested Array Data Using a String Path in PHP?

文字列パスを使用してネストされた配列データを設定する

質問:
ネストされた配列データを動的に設定するにはどうすればよいですか? 「cars.honda.civic」などの文字列パスを使用した配列データeval() に依存しない $data'cars'['civic']?

答え:
参照演算子 (&) により、次の動的な設定が可能になります:

$temp = &$data;
foreach ($exploded_path as $key) {
    $temp = &$temp[$key];
}
$temp = $value;
unset($temp);
ログイン後にコピー

このアプローチを使用すると、eval() を使用せずに、ネストされた配列データを効率的に設定できます。その仕組みは次のとおりです。

  • $temp はルート配列 ($data) への参照として初期化されます。
  • ループは展開されたパスを反復し、$temp を更新して連続的に参照します。既存の配列。
  • $temp には最終的に目的の値が割り当てられます。 $value.
  • unset($temp) は参照をクリアし、意図しない副作用を防ぎます。

以上がPHP で文字列パスを使用してネストされた配列データを動的に設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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