- ベストアンサー
配列に格納された値の変更について
お世話になります。現在下記のように配列に値を入れています $result=pg_query($db,$sql); $status=pg_result_status($result); $data=array(); while($row=pg_fetch_row($result)){ $data1[]=array("namae_id"=>$row[0],"namae"=>$row[1]); } 値を格納してからnamaeの部分の値を変更したいのですが、どのようにしたらいいでしょうか? 例えばnamae_id=4のnamaeの値を太郎から太郎 様という感じで変更したいのです。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
while($row=pg_fetch_row($result)){ $data1[$row[0]]=array("namae_id"=>$row[0],"namae"=>$row[1]); } $data1[4]['namae'] = "太郎 様" ってのはダメですか?
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
すべてのnamaeを一括で修正したいというなら 処理するfunctionを用意してarray_walk()になげるのが有効です。 わかりにくければforeachで処理してもよいでしょう <?PHP $data1[]=array("namae_id"=>1,"namae"=>"太郎"); $data1[]=array("namae_id"=>2,"namae"=>"次郎"); $data1[]=array("namae_id"=>3,"namae"=>"花子"); $data1[]=array("namae_id"=>4,"namae"=>"愛子"); function addSAMA(&$item){ $item["namae"].=" 様"; } array_walk($data1,"addSAMA"); print_r($data1); ?>
お礼
ありがとうございます。すべてではなくて、例えばnamae_idが4の場合のnamaeを変更したいのです。よろしくお願いします。
お礼
ありがとうございます。出来ました。