PHP配列の使用法を解決する

WBOY
WBOYオリジナル
2016-06-23 13:52:11781ブラウズ

他の人が書いた次のようなコードを見ました:

$a = array();$a['key'] = $a['key'] + 1;var_dump($a);

それを入力した後、コード内の 1 が配列 a の値になることがわかりました。 。
これ。 。この方法で使用したことはありません。 。


ディスカッションへの返信 (解決策)

a+=1; と同様の累積

は配列です。 。 。

$a['key'] = null + 1; と同等

$a['key'] = null + 1; と同等



理解できません。 。


は $a['key'] = null + 1 と同等です



理解できません。 。
何がわかりませんか?

$a['key'] = null + 1; と同等

$a = array();
$a['key'] = $a['key '] + 1 ; // 現時点では $a['key'] が存在しないため、 isset($a['key']) を使用すると false が返されるため、 $a['key'] = null
$a[' key'] + 1 は null +1 と同等です。これは、PHP が算術演算のために null を自動的に 0 に変換するため、0+1 となり、最終的には $a['key'] = 1

var_dump($a); となります。

これを行わないことをお勧めします。PHP は弱い型指定のステートメントであり、より高い実行効率を実現したい場合は、システムに型を識別させるのではなく、事前に型を宣言するのが最善です。 $a['key'] = null + 1 と同等です

理解できません。 。

何がわからないのですか

ああ。 。なるほど。勘違いしてました

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。