- 【PHP】下らねぇ質問はここに書き込みやがれ 8 [無断転載禁止]©2ch.net
49 :デフォルトの名無しさん (ワッチョイ ef03-v8EU)[sage]:2017/03/17(金) 21:47:37.52 ID:21PDp4R80 - >>25
遅くなりましたが無事出来ました イメージとしては $hoge = 'hoge'; $hoge_flg = '1'; $hoge2 = 'hoge'; $hoge2_flg = '1'; $piyo = 'piyo'; $piyo_flg = '0'; みたいなデータがいくつかあって、変数名_flgが1の変数だけ格納した配列を作りたかったんです 最初は連想配列をよくわかってなかったので $array = array_keys(array_filter([ $hoge=>$hoge_flg, $hoge2=>$hoge2_flg, $piyo=>$piyo_flg ],function($elm){ return $elm === '1'; }) ); と書いたら$arrayは['hoge','hoge']になるかと思ったのですが実際は['hoge']となり重複が 消えてしまったので困っていました >>25を参考に $array2 = array_column(array_filter([ ['id' => $hoge, 'flg'=> $hoge_flg], ['id' => $hoge2,'flg'=> $hoge2_flg], ['id' => $piyo, 'flg'=> $piyo_flg] ],function($elm){ return $elm['flg'] === '1'; }), 'id'); と書き直したところ無事期待していた配列を得られました。改めてありがとうございました PHPはまだ触り始めてから1ヵ月も経ってないので難しいですがなかなか面白い言語ですね
|
|