这里有什么问题:
$items = '';
$st = $db->query("select code from map where pos = 'home01' limit 1");
$res = $st->fetchColumn(); // result: 1-2-3-4
$arr = explode("-", $res);
foreach($arr as $el) {
$st = $db->query("select fname from banners where fname = " . $el . " limit 1");
$row = $st->fetchColumn();
$items .= "<img class='imgr imgr2' data-fname = '" . $row['fname'] . "' src='../banners/" . $row['fname'] . ".jpg' alt='img'>\n"; // line 88
}
echo $items;
警告:
第 88 行非法字符串偏移 'fname' ...
最佳答案
fetchColumn
直接返回下一列,而不是表示行的数组:
$fname = $st->fetchColumn();
$items .= "<img class='imgr imgr2' data-fname = '${fname}' src='../banners/${fname}.jpg' alt='img'>\n";
关于php - 获取数据库数据时出现非法字符串偏移警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46539493/