【问题标题】:Foreach loop giving me this error "Warning: Illegal string offset"Foreach 循环给了我这个错误“警告:非法字符串偏移”
【发布时间】:2022-01-24 09:17:45
【问题描述】:

我正在尝试打印我使用 if 语句的表中的所有行,但它只返回一行,所以我尝试使用 foreach 语句,但它给我一个错误“警告:非法字符串偏移”每一行,这是我正在使用的代码:

$sql = "SELECT date, km_entre, km_sortie, type, montant FROM carburant WHERE id_user = 0";
$statement = $conn->query($sql);
$res = $statement->fetch();

foreach ($res as $roww){
    echo ' <tr>
    <td>' .$roww['date']. '</td>
    <td>' .$roww['km_entre']. '</td>
    <td>' .$roww['km_sortie']. '</td>
    <td>' .$roww['type']. '</td>
    <td>' .$roww['montant']. '</td>

    </tr>';
 }

我哪里做错了?

【问题讨论】:

  • id_user = 0 我猜只有 1 个用户的 id 为 0
  • 我默认将 id_user 设置为 0,因此所有条目的 id_user 都为 0。
  • 我检查了您建议的文章,发现我缺少什么,诀窍是将 fetch 更改为 fetchALL。感谢阿里夫汗的帮助。

标签: php foreach


【解决方案1】:

对于遇到相同问题的每个人,请检查以下内容: Illegal string offset Warning PHP 我所要做的就是将 fetch() 更改为 fetchALL(PDO::FETCH_ASSOC)。

【讨论】:

    猜你喜欢
    • 2019-03-01
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-30
    • 2013-09-13
    相关资源
    最近更新 更多