PHP の連想配列は順序がありますか?
2023-12-18 20:14:33
質問
私はpythonの出身ですが、pythonのデータ型で似たようなもの(辞書)は 順不同 キーと値のペアのセットです。
PHP の連想配列は順不同なのでしょうか? 順序付けされているように見えますが。
$test = array(
'test' => 'test',
'bar' => 'bar',
);
var_dump($test);
var_dump(array_slice($test, 0, 1));
テストは常にバーの前に来て、私はあなたが見るようにこの配列をスライスすることができます。 では、これは php のバージョンに関係なく常に順番が保証されているのでしょうか? この順序は、私が配列を宣言した順序だけなのでしょうか? つまり、何かが内部的に配列の[0]を配置するために'test'を指しているのでしょうか? 私が読んだのは http://php.net/manual/en/language.types.array.php を読みましたが、この問題にはあまり光が当たっていません。 ご回答をよろしくお願いします。タイ
どのように解決するのですか?
PHP の連想配列 (数値配列と同様)
は順序付けされます。
であり、PHP は配列のキーの順序を処理するさまざまな関数を提供しています。
ksort()
,
uksort()
そして
krsort()
さらに、PHPでは、数値キーを持つ配列を順番通りに宣言することができます。
$a = array(3 => 'three', 1 => 'one', 2 => 'two');
print_r($a);
Array
(
[3] => three
[1] => one
[2] => two
)
// Sort into numeric order
ksort($a);
print_r($a);
Array
(
[1] => one
[2] => two
[3] => three
)
<ブロッククオート
PHPの配列 は実際には順序付きマップであり . マップはキーに値を関連付ける型です。配列、リスト(ベクトル)、ハッシュテーブル(マップの実装)、辞書、コレクション、スタック、キュー、その他いろいろな用途に最適化された型です。配列の値は他の配列になることができるので、木や多次元配列も可能です。
関連
-
[解決済み】XAMPPのphpMyAdminで「設定にあるcontroluserの接続に失敗しました。
-
MacでPHPを実行した際に、メモリサイズが134217728バイトも消費される問題の解決方法について
-
[解決済み] PHPで配列から要素を削除する
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] 配列の場合、なぜ a[5] == 5[a] になるのでしょうか?
-
[解決済み] 配列の結合/平坦化
-
[解決済み] PHP オブジェクトを連想配列に変換する
-
[解決済み】JavaScriptで2つの配列を結合し、項目の重複を排除する方法
-
[解決済み] PHPの配列が連想配列か順次配列かを確認する方法は?
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】PHPで空の値からデフォルトオブジェクトを作成する?
-
[解決済み] コマンドの同期がとれていない。
-
[解決済み】XAMPPのphpMyAdminで「設定にあるcontroluserの接続に失敗しました。
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み】PHP フェイタルエラー。未定義の関数mssql_connect()をコールしています。
-
[解決済み】PHPのクラスが見つからないが、インクルードされている
-
thinkphp5 timestamp 非整形の数値に遭遇した。
-
phpのAllowed memory size of 134217728 bytes枯渇問題の解決法
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み] mysql_field_nameを新しいmysqliに変更します。