现在我正在尝试从SQL响应中设置一个变量,而不是超出必要的范围。
情况是我有SELECT + JOIN查询的SQL结果,sys.setdefaultencoding('utf-8')
列只有一个值。其他列每行不同,我需要遍历它们以获取该数据。我想知道是否有办法从user_id
列中提取同质值而不将其一遍又一遍地设置为我的while循环中的变量。
代码:
user_id
SQL:
#where I would like the $user_id to be set
while($responseArray = $response->fetch_assoc()){
$userId = $responseArray["user_id"]; #what I don't want to do
#other fetching stuff
}
答案 0 :(得分:0)
您无法取得至少一个结果行。即使是$result = $db->query(...);
$row = $result->fetchRow();
$value = $row['somefield'];
- 类型的函数也可以这样做。但是,如果你只想要一行,那为什么还要首先使用循环呢?
$result = $db->query(...);
while($row = $result->fetchRow()) {
$value = $row['somefield'];
break;
}
会比傻逼的好得多。
{{1}}