循环数组的正确方法是什么

时间:2015-12-01 09:54:00

标签: php arrays multidimensional-array

我有一个脚本。

   $args = array(
    'post_type' => 'cust_type',
    'tax_query' => array(
    'relation' => 'AND',
        array(
            'taxonomy' => 'category',
            'field' => 'slug',
            'terms' => 'term1',
        ),
        array(
            'taxonomy' => 'category',
            'field' => 'slug',
            'terms' => 'term2',
        ),
    ),
);

我希望线关系下面的数组是循环的。

到目前为止我做了什么:

$keys = array('term1','term2');
foreach($keys as $key) {
    $arcom .= "array(
        'taxonomy' => 'category',
        'field' => 'slug',
        'terms' => '$key',
    ),";
}

这是对的吗?我是以正确的方式做到的吗?

3 个答案:

答案 0 :(得分:1)

你做得几乎正确

$keys = array('term1','term2');
$arcom = array();
foreach($keys as $key) {
    $arcom[] = array(
        'taxonomy' => 'category',
        'field' => 'slug',
        'terms' => $key,
    );
}

<强>解释

可以使用像[]这样的$arcom[]将数组附加到最后。

$arcom[5]此处的数字表示数组将插入的键,数字也可以替换为字符串或将其留空将数组追加到末尾。

答案 1 :(得分:1)

代码中所需的更改

$keys = array('term1','term2');
$arcom = array();
foreach($keys as $key) {
$arcom[]= array(
        'taxonomy' => 'category',
        'field' => 'slug',
        'terms' => $key,
    );
}

答案 2 :(得分:0)

$keys = array('term1','term2');
$arcom = array();
foreach($keys as $key) {
    $arcom_sub_array = array(
        'taxonomy' => 'category',
        'field' => 'slug',
        'terms' => $key
    );
    array_push($arcom,$arcom_sub_array);
}