我使用while循环从数据库中获取值&将它们分配给一个数组。但是,当循环退出时;价值变化。
synchronized(PrintNums.class)
当我在循环作业中时,[" i"]会向第二个实例返回不同的值。先感谢您。根据评论请求分享更多代码
$i=1;
$sql = "SELECT * FROM opportunities WHERE location = '$location'";
$result1 = mysqli_query($conn, $sql);
while($row1 = mysqli_fetch_assoc($result1))
{
$job[$i]= $row1['id'];
echo $job[$i] . "is the ID of the Job opening with this location <br>";
$job[$i][1] = 3;
$i=$i+1;
echo $job['$i'];
}
echo $job[1]. $job[2];
输出:对于第一个循环,循环(第一个实例)中的结果是27&amp; 29。 在循环之外,结果是23&amp; 23. 23是下一个循环的第一个值(如果它以任何方式相关)
答案 0 :(得分:0)
以下代码会产生什么结果?
$sql = "SELECT * FROM opportunities WHERE location = '$location'";
$result = mysqli_query($conn, $sql);
$jobs = array();
$i = 0;
while ($row = mysqli_fetch_assoc($result))
{
$jobs[$i]['id'] = $row['id'];
$jobs[$i]['relevance'] = 3;
$i++;
}
var_dump($jobs);