Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Foreach循环输出字母而不是值_Php_Arrays - Fatal编程技术网

Php Foreach循环输出字母而不是值

Php Foreach循环输出字母而不是值,php,arrays,Php,Arrays,我得到了下面的查询,我正在尝试遍历结果,但是echo只返回数组的第二个字母,而不是整个第二个数组 $tsql = "SELECT UserId, Email FROM Membership"; $stmt = sqlsrv_query($conn, $tsql); $row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_NUMERIC); while ($row) { $body .= $row[0]; foreach($row as $ema

我得到了下面的查询,我正在尝试遍历结果,但是echo只返回数组的第二个字母,而不是整个第二个数组

$tsql = "SELECT UserId, Email FROM Membership";
$stmt = sqlsrv_query($conn, $tsql);
$row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_NUMERIC);
while ($row) {
    $body .= $row[0];
    foreach($row as $email)
    {
        echo $email[1]. "<BR>   ";
    }
}
;
$tsql=“选择用户ID,来自会员的电子邮件”;
$stmt=sqlsrv_查询($conn,$tsql);
$row=sqlsrv\u fetch\u数组($stmt,sqlsrv\u fetch\u NUMERIC);
while($row){
$body.=$row[0];
foreach($行作为$电子邮件)
{
echo$email[1]。“
”; } } ;
您的代码有太多问题。你应该使用类似于

$tsql = "SELECT UserId, Email FROM Membership";

$stmt = sqlsrv_query($conn, $tsql);

while ($row = sqlsrv_fetch_assoc($stmt, SQLSRV_FETCH_ASSOC) ) {

        echo $row [UserId]. "<BR>   ";
        echo $row [Email ]. "<BR>   ";

};
$tsql=“选择用户ID,来自会员的电子邮件”;
$stmt=sqlsrv_查询($conn,$tsql);
而($row=sqlsrv\u fetch\u assoc($stmt,sqlsrv\u fetch\u assoc)){
echo$row[UserId]。“
”; echo$row[电子邮件]。“
”; };
$email
不是数组。有几个问题。为什么是两个循环?为什么只有一次?为什么要调用$row$电子邮件中的两个列,而实际上只有一个是?请解释您想要实现的目标。
$row[0]
=userid<代码>$row[1]=电子邮件。无需使用foreach。这就是为什么你会收到第二个字母,.额外的分号,而pz chksorry我的错误。。固定的…)感谢
SQLSRV\u FETCH\u NUMERIC
可与
SQLSRV\u FETCH\u assoc
一起使用
Userid
Email
作为数组键应该被引用。我建议你也解释一下这个问题。你的答案会得到更多的选票