Saya cuba mencari nilai dalam tatasusunan milti dan selepas menemuinya, saya ingin mengembalikan kunci yang berbeza, tidak pasti bagaimana untuk menerangkan dengan lebih lanjut.
Saya mempunyai tatasusunan:
tempArray( [0] => Array ( [id] => 18460 [field_id] => 14 [parent_id] => 165 [custom_tab_field_id] => 17775 [status] => 0 [field_type] => 0 ) [1] => Array ( [id] => 18461 [field_id] => 2 [parent_id] => 165 [custom_tab_field_id] => 17776 [status] => 0 [field_type] => 2 ) [2] => Array ( [id] => 18462 [field_id] => 12 [parent_id] => 165 [custom_tab_field_id] => 17777 [status] => 2 [field_type] => 2 ))
Saya cuba mencari tatasusunan mengikut [custom_tab_field_id] dan mengembalikan tatasusunan semasa [status].
Saya mencipta fungsi yang sepatutnya melakukan ini, tetapi ia sentiasa mengembalikan 0.
Ciri-ciri:
function searchForStatus($id, $array){ $returnedStatus = "0"; foreach ($array as $key => $val){ if ($val['custom_tab_field_id'] == $id){ return $returnedStatus = $array[$key]['status']; } } return $returnedStatus; }
Kemudian hanya panggil fungsi dengan menghantar nilai
$returnedStatus = searchForStatus($field['custom_tab_field_id'], $tempArr);
boleh diselesaikan menggunakan fungsi
array-filter
. ItulahIa akan mengembalikan keseluruhan tatasusunan daripada tatasusunan yang sepadan dengan
搜索
id.Anda juga boleh menulis fungsi untuk ini
Menggunakan fungsi array_column, ini boleh diselesaikan dengan mudah dan sangat umum.
Penyelesaian ini tidak termasuk pengendalian ralat, ia hanya menunjukkan prinsip. $arrKeyValue ialah tatasusunan, bagaimana pula:
Cuba sendirihttps://3v4l.org/SnVM4