【问题标题】:arrays in foreach in yii 1yii 1中foreach中的数组
【发布时间】:2017-06-11 22:11:40
【问题描述】:

我的控制器中有以下代码:

 $data= Yii::app()->db->createCommand()
                    ->select('region_id')
                    ->from('user_rights')
                    ->where('user_group_id='.$findRegion['user_group_id'])
                    ->queryAll();

 foreach($data as $key=>$value){
            $array_o[$key] = $value;
        }

var_dump($array_o); 返回以下值:

array(2) { [0]=> array(1) { ["region_id"]=> string(4) "1703" } [1]=> array(1) { ["region_id"]=> string(4) "1706" } }

但是,我需要得到类似于以下值:

array(2) { [0]=> string(4) "1703" [1]=> string(4) "1706" }.

我该怎么做?

【问题讨论】:

    标签: php yii yii1.x


    【解决方案1】:

    只需从一开始就设置正确的值:

    foreach ($data as $key => $value){
        $array_o[$key] = $value['region_id'];
    }
    

    【讨论】:

      【解决方案2】:

      试着把它变成这样

       foreach($data as $key=>$value){
              $array_o[$key] = $value['region_id'];
          }
      

      【讨论】:

        【解决方案3】:

        在您的foreach 中执行以下操作:

         $array_o[$key] = $value['region_id'];
        

        希望对你有帮助。

        【讨论】:

          【解决方案4】:

          你可以使用queryColumn()方法

          所以设置语句就足够了

          $data= Yii::app()->db->createCommand()
                          ->select('region_id')
                          ->from('user_rights')
                          ->where('user_group_id='.$findRegion['user_group_id'])
                          ->queryColumn();
          

          并删除您的 foreach 语句。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-10-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-12-05
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多