ホームページ > バックエンド開発 > PHPチュートリアル > $array[0] と $array['0'] の違い

$array[0] と $array['0'] の違い

WBOY
リリース: 2016-06-23 13:41:30
オリジナル
1381 人が閲覧しました

タイトルにあるように、 $array0=$array[0] と $array0=$array['0'] はどちらも配列の最初の値を取得できます


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

一般的には使用されません 一重引用符で十分です

これらはすべて数値 0 であるため、違いはありません

コードが標準化され、エラーが発生しにくくなり、コードが簡単になるように、一般的な規則に従ってプログラムを作成することをお勧めします他の人が読むこと。

全て数字の0なので違いはありません



1 2 3 などに置き換えるとどうなるでしょうか? ?

コードが標準化され、エラーが発生しにくくなり、他の人が読みやすくなるように、一般的なルールに従ってプログラムを作成することをお勧めします。


なな、つまり、両者に違いはありません

微妙な違いは、実行時に $array[0] が C の strtol 関数 (実際には __strtol_internal 関数) を呼び出す回数が 1 回少ないことです。一重引用符を追加すると、それが文字列であることを意味しますか? int ではありません

$array = array("1" => "bar1", "0" => "bar2")

$array[0] -> bar1
$array['0'] -> bar2

一重引用符を追加するということは、それが文字列であることを意味しますか? $array = array("1" => "bar1", "0" => "bar2")

$array[0] -> bar1


上記の意見に同意します
角括弧内のキーの値は整数または文字列型であること ' ' は文字であることを意味します 文字列の型は、追加されない場合は整数型 0 とみなされます

数値である限り、数値型と数値型の違いはありません文字の種類
var_dump(3.2 == '3.2'); //true
ログイン後にコピー
ログイン後にコピー




全て数字の0なので違いはありません

If 1 2 3 などに変えてみてはいかがでしょうか? ?


キー名のデータ型が異なります。一重引用符を追加すると実行速度が向上します

一重引用符を追加すると、文字列ではないということですか? $array = array("1 " => ; "bar1", "0" => "bar2")

$array[0] -> bar1

$array['0'] -> bar2



上記の意見に同意します
括弧内 キー値は整数または文字列タイプです。「 」は文字列のタイプを意味します。追加しない場合は、整数タイプ 0 とみなされます。数値に変換されると、数値インデックスにも変換されます


単一引用符を追加すると、それが非 int であることを意味しますか? $ array = array("1" => "bar1", "0" => " bar2")


$array[0] -> bar1
$array['0'] ->
I入力してみましたが、出力はすべて bar2 なので、まだ「PHP 配列」の上のポイントです。インデックス文字列を数値に変換できる場合は、数値インデックスにも変換されます。変換プロセスのもう 1 つのステップです。


?言葉???。

ただし、

$array[a] と $array['a'] は異なり、前者は効率に影響します。


数字である限り、数値型と文字型の違いはありません

var_dump(3.2 == '3.2'); //true
ログイン後にコピー
ログイン後にコピー




全て数字の0なので違いはありません


に置き換えるとどうなるでしょうか1 2 3 とかそんな感じでしょうか? ?


True を返すのは、データ型を自動変換して比較するためです。比較に === を使用すると false が返されます。

PHP は弱い型指定言語であり、動作中に適切なデータ型に自動的に変換されます。
テストを行った結果、次の結論に達しました:

引用符で囲まれた整数文字列は自動的に数値に変換され、整数以外の数値は変換されず、文字列インデックスとして扱われます。
引用符のない数値、非整数は丸められ、整数インデックスとして使用されます


さらに、定数として定義されていない文字列は、引用符なしでは正しい結果が得られますが、警告が表示されます。 。 間違い。



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