二次元配列への要素の追加についてアドバイスをお願いします。
<?php<br />
<br />
while(mysql_fetch_array){<br />
$arr[$key][] = array("value"=>$value);<br />
<br />
if($somecondition){<br />
foreach($arr as $k => $v){<br />
$arr[$k][] = array("value"=>"");<br />
}<br />
}<br />
}<br />
<br />
?>
ログイン後にコピー
ループで 2 次元配列を作成して要素を追加する場合がありますが、特定の条件 $somecondition が発生すると、配列内の各 $key に空の値を持つ要素が追加されます。
追加した後に見てみると、追加した空の要素がすべて配列の先頭に移動していることがわかりました。これはなぜでしょうか。
どうすれば正しく追加できますか?
二次元配列
PHP
-----解決策--------------------------------がない場合 キー名が指定されている場合、現在の最大の整数インデックス値が取得され、新しいキー名はこの値に 1 を加えたものになります。指定したキー名にすでに値が設定されている場合、その値は上書きされます。
------解決策---------アイデアは次のようになります
while(mysql_fetch_array){
if($somecondition){ //ギャップが大きすぎる場合
$arr[$key][] = array("value"=>""); // 複数の null 値がある場合は、for ループを使用します
}
$arr[$key][] = array("value"=>$value) //データを追加します