2016-04-28 4 views
-3

の配列のキーとして電子メールIDを使用することが安全である私は、PHPは、キーとして受け入れ、番号や有効な文字列という読みになりました。は、私はPHP</p> <pre><code>array( '[email protected]' => 'something', ... ); </code></pre> <p>で以下を実行しようとしていPHP

上記のように電子メールIDをキーとして配列しても安全ですか? 安全ではありませんこれは、これが何らかの種類のエラーまたは例外や問題を引き起こす可能性があります

注: 私はこの配列にいくつかのアイテムがあると思います私はこの

私に知らせてください

+3

はい、間違っている見積もりを修正する限りです。 – Sammitch

+4

http://stackoverflow.com/q/10696067/2137833もご覧ください。 – Rick

+0

ありがとうございました。 @サミーは質問の欠落している引用符を指摘してくれてありがとう –

答えて

4

短い答えを行います。それはPHPで文字列を使用でき場合は、今日では、それが安全に連想配列のキーとして使用することができます。

長い答え:PHP manualからは:

キーは、整数または文字列のいずれかとすることができます。値は任意の タイプになります。

さらに、次のキーのキャストが発生します。有効な整数を含む

文字列は整数型にキャストされます。 など。キー「8」は実際には8の下に格納されます。一方、 「08」は有効な10進整数ではないため、キャストされません。

浮動小数点数も で整数にキャストされます。これは、小数部が短縮されたことを意味します( )。例えば。実際にキーは の1の下に格納され、0の下のキーはfalseに格納されます。

ヌルは空文字列にキャストされ、 つまり、キーnullは実際には ""の下に格納されます。

アレイとオブジェクト はキーとして使用できません。そうすると、警告が表示されます。違反 オフセットタイプ。

配列宣言の複数の要素が同一キー を使用する場合は、最後のもののみが使用され、他の要素はすべて が上書きされます。

関連する問題

 関連する問題