duanchong3075 2018-07-13 07:37
浏览 31
已采纳

将三个阵列组合成一个内部foreach

$cats_array = array(1,7,28);

foreach ($cats_array as $category) {
    $category_field_query = "SELECT fields 
                             FROM categories 
                             WHERE status = 1 AND id = $category";
    $category_field_query_run = mysqli_query($connect, $category_field_query);
    $cat_field = mysqli_fetch_object($category_field_query_run);

    $field = explode(",", $cat_field->fields); /* Explode ',' from '/'3'/,' */
    $field = str_replace("/","",$field); /* Delete all '/' */

    print_r($field);
}

Inside foreach loop, my query returns something like that /7/,/13/,/24/ from fields for every turn, then I clean them from slashes and commas.

My goal is collect all that arrays inside one array.

I tried to create an empty array outside of foreach and sum all in it but it returned empty.

  • 写回答

3条回答 默认 最新

  • dongshendi3599 2018-07-13 07:54
    关注

    You have to be define $filed as a array before foreach loop. now you can store value into $filed. note that you have to multidimensional array required to store value.

    $cats_array = array(1,7,28);
    $field = array();
    foreach ($cats_array as $category) {
        $category_field_query = "SELECT fields FROM categories WHERE status = 1 AND id = $category";
        $category_field_query_run = mysqli_query($connect, $category_field_query);
        $cat_field = mysqli_fetch_object($category_field_query_run);
    
        $field1 = explode(",", $cat_field->fields); /* Explode ',' from '/'3'/,' */
        $field[] = str_replace("/","",$field1); /* Delete all '/' */
    } 
    print_r($field);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?