Standing on the Shoulder of Linus

Home / 2011 / 10月 / 06 / 配列とforeach

配列とforeach

初めてのPHP5 を読んでいて、foreach のところで興味深い例が紹介されていました。今回は手元にあった Ubuntu10.04, PHP5.3.2と、やや古いバージョンで行いました。

$letters[0] = "a";
$letters[1] = "b";
$letters[3] = "d";
$letters[2] = "c";
foreach ( $letters as $key => $val ) {
    print $key;
    print $val;
    print "n";
}

このコードを実行すると、
0a
1b
3d
2c
と表示されます。添字の順ではなく、キー値のペアを指定した順になります。

これは foreach というよりは、配列が連想配列として処理される、ということだと思われます。

$letters = array("","","","");
$letters[0] = "a";
$letters[1] = "b";
$letters[3] = "d";
$letters[2] = "c";

と、最初に4アイテム定義しておくと、あとで値を書き換えても、順序は保たれます。
0a
1b
2c
3d

$letters = array("","","",""); のあとに print_r($letters) とすると、

Array
(
    [0] => 
    [1] => 
    [2] => 
    [3] => 
)

と表示されました。

PHP技術者試験初級問題なら、この辺りの出題がされそうですね。

関連

Posted in PHP技術者試験 | Tagged array, foreach
← xmlrpcを使ってWordPressに投稿する Sphinxのインストール、使い方 →

アーカイブ

人気の投稿とページ

  • キンドル本を印刷する(PDFに変換する)方法
  • 名古屋駅から国際センターまでの道のり(徒歩)
  • AGPL ライセンス(GPLとは似ているが違いもある)
  • 問い合わせフォーム改善: 選択肢により条件分岐し、項目の表示非表示を変更する
  • JP-Secure SiteGuard WP Pluginは不正ログイン防止に役立つか

プロフィール

水野史土:月70万PVホームページ制作会社のレスキューワーク株式会社で、PHPソフトウェアのサポートを行っている。concrete5コミュニティリーダー、Novius OSコアコード貢献者でもある。 詳しくは管理者詳細参照。
大好評WordPress書籍「WordPressユーザーのためのPHP入門 はじめから、ていねいに。」サポートページ

Copyright © 2015 Standing on the Shoulder of Linus.