Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Script PHP lấy tất cả khóa từ mảng bắt đầu bằng chuỗi xác định

Phương pháp 1

$arr_main_array = array('test_val' => 123, 'other-value' => 456, 'test_result' => 789); 
foreach($arr_main_array as $key => $value){ 
    $exp_key = explode('-', $key); 
    if($exp_key[0] == 'test'){ 
        $arr_result[] = $value; 
    } 
} 
if(isset($arr_result)){ 
    print_r($arr_result); 
}

Phương pháp 2

Một cách tiếp cận chức năng 
Một hàm kiểu array_filter_key được lấy và áp dụng cho các phần tử mảng 
$array = array_filter_key($array, function($key) { 
    return strpos($key, 'foo-') === 0; 
});

Phương pháp 3

Một cách tiếp cận thủ tục:

$val_1 = array(); 
foreach ($array as $key => $value) { 
    if (strpos($key, 'foo-') === 0) { 
        $val_1[$key] = $value; 
    } 
}

Phương pháp 4

Cách tiếp cận thủ tục sử dụng đối tượng:

Ví dụ

$i = new ArrayIterator($array); 
$val_1 = array(); 
while ($i->valid()) { 
    if (strpos($i->key(), 'foo-') === 0) { 
        $val_1[$i->key()] = $i->current(); 
    } 
    $i->next(); 
}

Kết quả

Điều này sẽ tạo ra kết quả sau:

Array(test_val => 123 test_result => 789)