ホームページ  >  記事  >  バックエンド開発  >  PHPの配列キーの格納ルール

PHPの配列キーの格納ルール

WBOY
WBOYオリジナル
2016-06-13 12:36:22934ブラウズ

PHP 配列キーの格納規則

プログラムを書いているときに PHP 配列値の問題に遭遇し、抽出された文字列と数値が同じであることがわかりました。


key には、整数 または 文字列 を指定できます。 どのタイプでも構いません。

さらに、key には次のキャストが含まれます:

  • 正当な整数値を含む文字列は整数に変換されます。たとえば、キー名 "8" は実際には次のように保存されます。 8。ただし、"08" は有効な 10 進数値ではないため、キャストされません。
  • 浮動小数点数も整数に変換されます。つまり、小数部分は四捨五入されます。たとえば、キー名 8.7 は実際には次のように保存されます。 8
  • ブール値も整数に変換されます。つまり、キー名 true は実際には として保存されます。 1 とキー名 false0 として保存されます。
  • Null は、キー名である空の文字列に変換されます。 null は、実際には "" として保存されます。
  • 配列とオブジェクト はキーとして を使用できません。これを強制的に実行すると、次の警告が表示されます: 不正なオフセット タイプ

複数のユニットが配列定義で同じキー名を使用する場合、最後のユニットのみが使用され、前のユニットは上書きされます。 取得時に整数または文字列を使用した場合の効果は同じです。

<span style="color:#000000"><span style="color:#0000BB">$array <code><span style="color:#000000"><span style="color:#0000BB">$array </span><span style="color:#007700">= array(<br>     </span><span style="color:#0000BB">1    </span><span style="color:#007700">=> </span><span style="color:#DD0000">"a"</span><span style="color:#007700">,<br>     </span><span style="color:#DD0000">"1"  </span><span style="color:#007700">=> </span><span style="color:#DD0000">"b"</span><span style="color:#007700">,<br>     </span><span style="color:#0000BB">1.5  </span><span style="color:#007700">=> </span><span style="color:#DD0000">"c"</span><span style="color:#007700">,<br>     </span><span style="color:#0000BB">true </span><span style="color:#007700">=> </span><span style="color:#DD0000">"d"</span><span style="color:#007700">,<br> );</span></span>= array(

1 <span style="color:#000000"><span style="color:#0000BB">$array</span></span>=> <span style="color:#000000"><span style="color:#0000BB">$array</span></span>"a"<span style="color:#000000"><span style="color:#0000BB">$array</span></span>

"1"

=>
"b "

1.5 => "c"true => "d"、 ); <span style="color:#000000"><span style="color:#0000BB">$array</span></span>[1] および <span style="color:#000000"><span style="color:#0000BB">$array</span></span>["1"]、<span style="color:#000000"><span style="color:#0000BB">$array</span></span>[true] はすべての d を返します。これは、d が前の値と key1、「1」、true をカバーしているためです。インタプリタの場合、それらはすべて 1 であるため、同じです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。