以下のコードなのですが、$item_info_listのキーstatusが「0」だった場合、配列を削除することを想定し、書いたコードなのですが、実行しますと
array(1) { [0]=> array(5) { ["id"]=> int(24) ["name"]=> string(10) "テスト2" ["price"]=> int(200) ["img"]=> string(8) "img/test" ["status"]=> string(1) "0" } }
このようになってしまいます。$item_info_listに含まれている2つの配列のキーstatusはどちらも「0」にも関わらず、何故、一つしか配列が削除できないのでしょうか?
$item_info_list = array( 0 => array('id' => 33, 'name' => 'テスト', 'price' => 100, 'img' => 'img/test', 'status' => '0'), 1 => array('id' => 24, 'name' => 'テスト2', 'price' => 200, 'img' => 'img/test', 'status' => '0') ); foreach($item_info_list as $key=> $value){ if($value['status'] == 0){ // var_dump($key); // exit(); unset($item_info_list[$key]); } // var_dump($item_info_list); $item_info_list = array_values($item_info_list); } var_dump($item_info_list); exit();
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/29 06:43
2019/07/29 06:45
2019/07/29 06:48
2019/07/29 06:57
2019/07/29 07:01
2019/07/29 07:06