Php 数组\推送非数组值

Php 数组\推送非数组值,php,arrays,Php,Arrays,我想让某个变量的数组在for循环中生成。第一次$priManagerId=516,第二次为346,第三次为675,依此类推。但是我得到了错误的最后一个值数组。如何得到像(516346675,…,1599)这样的值 将$priManagerId=DB::table更改为$userId=DB::table。您已经为数组和DB响应定义了相同的变量名 protected $priManagerId = array (); foreach($proOwnerPM as $PriManager){

我想让某个变量的数组在for循环中生成。第一次$priManagerId=516,第二次为346,第三次为675,依此类推。但是我得到了错误的最后一个值数组。如何得到像(516346675,…,1599)这样的值


$priManagerId=DB::table
更改为
$userId=DB::table
。您已经为数组和DB响应定义了相同的变量名

protected $priManagerId = array ();
foreach($proOwnerPM as $PriManager){
             if($PriManager->manager_aceid!='')
             {
              $userId= DB::table ('users')->where('aceid','=',$PriManager->manager_aceid)->first()->id;   
              print_r(  $userId); //516


              array_push($priManagerId, $userId);

             }
            }
            var_dump($priManagerId);

更简单的方法是在数组名称后添加“[]”来填充数组。
就像这样:

$priManagerId[] = DB::table ('users')->where('aceid','=',$PriManager->manager_aceid)->first()->id;
它将自动填充您正在查找的阵列。 然后,您不需要“array\u push”功能

希望它能帮助你:)

$priManagerId[] = DB::table ('users')->where('aceid','=',$PriManager->manager_aceid)->first()->id;