PHP で無効な名前を持つプロパティにアクセスする
型破りな名前または無効な名前を持つプロパティにアクセスすると、PHP で問題が発生する可能性があります。このようなシナリオの 1 つは、プロパティ名がサードパーティ API の仕様に準拠している、外部で定義されたオブジェクトを操作するときに発生します。
無効なプロパティ名の問題
次のコードを考えてみましょう。 :
$insertArray = array(); $insertArray[0] = new stdclass(); $insertArray[0]->Name = $name; $insertArray[0]->PhoneNumber = $phone;
このコードは、stdClass の "Name" と "PhoneNumber" という名前のプロパティに値を割り当てます。 insertArray 内のオブジェクト。ただし、外部サービスが「First.Name」などの無効な名前のプロパティを定義している場合、ドット構文 ($insertArray[0]->First.Name など) を使用すると構文エラーが発生します。
ソリューション: 複雑な (複雑な) 構文
PHP がソリューションを提供します複雑な (複雑な) 構文を使用して、標準以外の名前を持つプロパティにアクセスできます。ドット構文を使用する代わりに、プロパティ名を中括弧で囲みます。
$insertArray[0]->{"First.Name"} = $firstname;
この構文を使用すると、構文エラーが発生する無効な名前または文字を持つプロパティにアクセスできます。中括弧は区切り文字として機能するため、外部サービスによって定義されたとおりにプロパティ名を正確に指定できます。
以上がPHP で無効な名前のプロパティにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。