<?php
function get_set_arr( $hold=null, $use=null, $action_name=null, $action_update=null ){
$set_arr = [
[ 'key'=>'a', 'hold'=>['cat'], 'use'=>['mew'], 'action_name'=>'honk', 'action_update'=>['animal','cute'] ],
[ 'key'=>'b', 'hold'=>['dog'], 'use'=>['bow'], 'action_name'=>'bark', 'action_update'=>['animal','cool'] ],
[ 'key'=>'c', 'hold'=>['cow'], 'use'=>['moo'] ],
];
// 引数をもとに一致する行の配列を返す
$result = [];
foreach( $set_arr as $set ){
if( $hold==null ? false : $hold['hold']==$set['hold']
|| $use==null ? false : $use['use']==$set['use']
|| $action_name==null ? false : $action_name['action_name']==$set['action_name']
|| $action_update==null ? false : $action_update['action_update']==$set['action_update']
){
$result[] = $set;
}
}
return $result;
}
$args = ['hold'=>['cat']];
$result = get_set_arr( $args );
var_dump( $result );
preferences:
41.89 ms | 402 KiB | 5 Q