![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
例えば、次のような場合、
「echo "<br>";」よりも上と下は同じ結果になるのですが、
上の方が正しくて下の方は問題があると思っていました。
エラーが出なければ、実は問題が無いのでしょうか?
問題が無いとしたら、
外側と内側で同じ「$key」を使っても問題が無い理由が分かりません。
どなたか、教えてください。よろしくお願いします。
<?php
$name = array("A","B","C","D");
$list = array("a","b","c");
foreach ($name as $key1 => $val1) {
foreach ($list as $key2 => $val2) {
echo $list[$key2]."<br>";
}
}
echo "<br>";
foreach ($name as $key => $val) {
foreach ($list as $key => $val) {
echo $list[$key]."<br>";
}
}
exit;
?>
結果:
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
a
b
c
No.1ベストアンサー
- 回答日時:
下の書き方だと$nameのキーや値にアクセスしづらいのでNGです。
yambejpさん、ありがとうございました。
その通りですね。
実は、自分のプログラムの間違いに気づいたのはそういうことでした。
$nameの値はほとんどのケースで内側のforeachの前に使っていて最近まで気付きませんでした。
たまたま内側のforeachの中で使うケースが生じて、
$name[3]を使いたかったのに$name[2]が使われていて気付きました。
いままで問題なく動作していたのが奇跡で、
実は気づかないだけで問題があったのではないかと心配になって質問させていただきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 1 2022/10/27 14:21
- PHP アコーディオンPHPが上手くいかない 3 2022/07/15 16:29
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP php テーブルが作成できない 1 2022/11/17 23:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NET で 二次元のハッシュは...
-
重複確認
-
Dictionary(連想配列?)の使い方
-
PHPで変数名にハイフンを使うに...
-
PHPからCSVをアップロード後、m...
-
foreachのなかで次のキーを参照...
-
Delphiで別unitで宣言した「TAr...
-
PHPにてクラスを配列にすること...
-
ネストが深い時のforeachはどう...
-
複数行のデータのPOST処理に関して
-
PHPでサーバー上の書き換えたht...
-
連想配列で値が空だったら、要...
-
別ファイルの構造体の値を読み...
-
am()の使い方
-
プルダウンメニューにDBの内容...
-
CSVデータの行数カウントをした...
-
しりとり 無限ループ?
-
複数ファイルで、それぞれの行...
-
Resource id #3 と表示されま...
-
配列の要素(value)に、変数を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
重複確認
-
foreachで上限回数指定方法また...
-
マッチング処理(1:N)
-
Excel VBAでフィルター後の対象...
-
VB.NET で 二次元のハッシュは...
-
多次元配列を、1次元の配列にす...
-
SELECT 使用時の bindValue の...
-
Smartyでインクリメント
-
PHPでこのコード自体に意味は無...
-
PHP、{}記号の意味
-
配列を比較して同じものがあっ...
-
phpでforeachの中にforeachがあ...
-
多次元配列の中で条件に合う要...
-
sqlのデーターを『あ行』『か行...
-
ラジオボタンをランダムに表示...
-
キーが倍数の時の値の存在チェ...
-
三重県南部の温泉
-
foreachで配列を、左から縦3列...
-
ジャグ配列
-
構造体の中でユーザー定義型の...
おすすめ情報
https://oshiete.goo.ne.jp/qa/9715287.html
で質問し直しました。