嗨我在調用函數時出錯。PHP - 帶數組的foreach函數
「警告:非法串偏移 'ID' 在C:\ XAMPP \ htdocs中\上線博客\ posts.php 2」
功能:
function get_short_posts() {
$sql = "SELECT * FROM posts ORDER by id DESC LIMIT 0, 5";
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result)) {
$timestamp = new DateTime($row['date']);
return array (
"id" => $row['id'],
"title" => $row['title'],
"content" => $row['content'],
"author" => $row['author'],
"date" => $timestamp->format('d-m-Y'),
"time" => $timestamp->format('H:i')
);
}
致電:
require_once "functions.php";
$_posts = get_short_posts();
foreach($_posts as $_post) {
echo $_post['id'];
}
嘗試在你的while循環中執行'die(var_dump($ row));'。這將停止所有其他執行,並在屏幕上顯示錯誤。 –
你知道你在get_short_posts函數的第一次迭代之後返回權限,所以foreach將無法按預期工作。 –
請顯示您的表格列名稱。也許列「ID」稱爲「Id」或「ID」? –