PHP While Foreach的MySQL密钥
到处搜索,找不到答案,所以我想是时候发布了。我目前有一个供应商表。我想使用每个供应商的“skuid”值循环每个供应商,因为它是唯一的,然后从该行回显其他信息。这是我到目前为止所拥有的PHP While Foreach的MySQL密钥,php,mysql,foreach,while-loop,Php,Mysql,Foreach,While Loop,到处搜索,找不到答案,所以我想是时候发布了。我目前有一个供应商表。我想使用每个供应商的“skuid”值循环每个供应商,因为它是唯一的,然后从该行回显其他信息。这是我到目前为止所拥有的 $mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME); if ($mysqli->connect_errno) { echo "<p>MySQL error no {$mysqli->connect_errno} :
$mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if ($mysqli->connect_errno) {
echo "<p>MySQL error no {$mysqli->connect_errno} : {$mysqli->connect_error}</p>";
exit();
}
$vendorQuery = "SELECT skuid FROM vendors";
$vendorResult = mysqli_query($mysqli, $vendorQuery);
while($row = mysqli_fetch_assoc($vendorResult)) {
foreach($row['skuid'] as $vendorid) {
echo $row['skuid'];
}
} ?>
$mysqli=newmysqli($DB\u HOST、$DB\u USER、$DB\u PASS、$DB\u NAME);
如果($mysqli->connect\u errno){
echo“MySQL错误号{$mysqli->connect_errno}:{$mysqli->connect_error}”;
退出();
}
$vendorQuery=“从供应商中选择skuid”;
$vendorResult=mysqli_query($mysqli$vendorrquery);
而($row=mysqli\u fetch\u assoc($vendorResult)){
foreach($vendorid'行作为$vendorid){
echo$row['skuid'];
}
} ?>
您不需要为每个人使用这个,您的外部循环就足够了
while($row = mysqli_fetch_assoc($vendorResult)) {
echo $row['skuid'];
}
而且单个mysql查询不会返回嵌套级别的数据,因此在这种情况下,嵌套循环不会有任何好的用例
当此循环运行时,每行始终只有1个skuid
。这里没有其他嵌套循环的用处
现在,如果您想从这个查询中创建一个供应商数组,然后循环使用它,这是一个很好的用例。比如说
while($row = mysqli_fetch_assoc($vendorResult)) {
$skuid=$row['skuid'];
$name=$row['name'];
$vendors[$skuid]=array('name'=>$name); // and other fields
}
foreach($vendors as $vendor){
echo $vendor['name'];
}
$row['skuid']
不是数组。知道为什么“$mysqli=newmysqli($DB\u主机,$DB\u用户,$DB\u通行,$DB\u名称);如果($mysqli->connect_errno){echo“MySQL错误号{$mysqli->connect_errno}:{$mysqli->connect_error}“exit();}$vendorQuery=”从供应商选择*”;$vendorResult=mysqli_query($mysqli$vendorrquery);而($row=mysqli_fetch_assoc($vendorResult)){echo$row['first_name'];}?>`返回mysqli_fetch_assoc()期望参数1是mysqli_结果,给定布尔值