所以我在一个函数中获取我的while循环的所有结果时遇到了问题。当我打印函数的结果时,它只需要1个结果而不是我需要的5-10个。有代码:
function display_post_edits($post_id,$post_name){
global $connect;
$result = array();
$rev = sanitize('revision');
$post_name = '$post_id-revision-v1'; //sanitize this soon!!
$query = mysqli_query($connect,"SELECT post_author,post_date FROM posts WHERE post_type ='$rev' AND post_name = '$post_id-revision-v1'");
while ($row = mysqli_fetch_assoc($query)){
$result[]= $row;
}
return $result;
}
//outside of function
$display_edits = display_post_edits(get_post_id($_POST['subject']),$_POST['subject']);
print_r($display_edits);
所以我试图从while循环获取所有结果并将其附加到$ display_edits,当我需要例如发布日期时,我将使用$ display_edits ['post_date']。
到目前为止,我有一些尝试:
foreach($result as $row){
return implode($result[0]);
}
返回1个结果,因为$ return正在打印像http://prntscr.com/gby0xu这样的数组(数组中的数组),所以我需要定义一个索引。我需要定义索引的内容。
while ($row = mysqli_fetch_assoc($query)){
$result = array(
'post_author' =>$row'post_author',
'post_date' =>$row'post_date'
);
}
再次打印1个结果... 如果你还需要更多东西,或者我错过了一些可以在这里给出的东西,请说出什么,我会添加它! 提前谢谢!
答案 0 :(得分:1)
你foreach
应该是这样的:
foreach($result as $row){
return implode($row[0]);
}
应该使用$row
而不是$result