Php 将内部生成的值存储在数组中

Php 将内部生成的值存储在数组中,php,Php,我想将if语句中生成的use\u id\u one的所有值存储在一个数组中。你知道怎么做吗 $query = mysql_query(" SELECT `user_id` FROM users WHERE (surname LIKE '$name%' AND name LIKE '$surname%') OR (surname LIKE '$surname%' AND name LIKE '$name%') "); while($run = mysql_fetch_array($query))

我想将if语句中生成的use\u id\u one的所有值存储在一个数组中。你知道怎么做吗

$query = mysql_query(" SELECT `user_id` FROM users WHERE (surname LIKE '$name%' AND name LIKE '$surname%') OR (surname LIKE '$surname%' AND name LIKE '$name%') ");

while($run = mysql_fetch_array($query)){
   $user_id_one = $run['user_id']; 

   $check_friend_query = mysql_query("  SELECT friends_id from friends WHERE  (user_one='$session_user_id' AND user_two ='$user_id_one') OR (user_one='$user_id_one' AND user_two='$session_user_id')   ");

    if( mysql_num_rows($check_friend_query) == 1  ){    
         echo"$user_id_one";
        //the above echo prints me all user_id_one values I want
        //how to store all these values of user_id_one in an array

    }
}       
接下来如何输出它们,以确保存储的正确性(用于测试)

替换此行:

echo"$user_id_one";
用这条线

$array[] = $user_id_one; //this will store the $user_id_one value in the array

将以下修改添加到代码中,以将值添加到数组中

$usersIdArray = array();
$index = 0;
while($run = mysql_fetch_array($query)){
   $user_id_one = $run['user_id']; 

    $check_friend_query = mysql_query("  SELECT friends_id from friends WHERE  (user_one='$session_user_id' AND user_two ='$user_id_one') OR (user_one='$user_id_one' AND user_two='$session_user_id')   ");

    if( mysql_num_rows($check_friend_query) == 1  ){    
        $userIdArray[$index++] = $user_id_one;

    }
}

foreach($userIdArray as $userId) {
    echo $userId;
}

创建数组并用这些值填充它。。。我看不出有什么问题$arr[]=$user\u id\u one将一个接一个地将值附加到数组。知道怎么做吗,因为我尝试过的方法不起作用,我相信更好的语法应该是
$userIdArray[]=$user\u id\u one,因为它减少了一个额外变量的开销,同时实现了相同的效果。