对于PHP中多维数组中具有特定键值的每个循环

时间:2015-02-05 06:29:25

标签: php arrays multidimensional-array

我一直在使用以下方法一次为多个删除构建一个子句,这很有用。这是针对单维数组的。

$prefix = $in_clause = '';
$binding_clause = array();  
foreach($selected as $key => $value)
{
    $in_clause .= $prefix.':selected_'.$key;
    $prefix = ', ';
    $binding_clause[':selected_'.$key] = $value;
}

现在,我需要在多维数组的特定值上使用它。鉴于此:

Array
(
    [0] => Array
        (
            [account_id] => 2
            [screenshot_id] => 120262
            [image_filename] => a1.jpg
        )

    [1] => Array
        (
            [account_id] => 2
            [screenshot_id] => 120263
            [image_filename] => a2.jpg
        )
    .......

我只需要键值和screenshot_id值,所以我试图更改第一个函数,因此值为:

key = 0, value = 120262
key = 1, value = 120263

希望这是有道理的。不确定如何使用多阵列执行此操作。

2 个答案:

答案 0 :(得分:1)

假设你有array格式,如上所述。

for($i=0; $i<=$array.count(); $i++){
    foreach($array[$i] as $key => $value){
        echo "Key: ". $i . " Value:" . $key['screenshot_id']
    }
}

答案 1 :(得分:1)

由于数组元素是数组,因此使用数组索引来访问元素的那一部分:

foreach ($selected as $key => $value) {
    $binding_clause[':selected_'.$key] = $value['screenshot_id'];
}