array_push key =>值,该怎么办?
问题描述:
我要推数组key和value,但我不能array_push key =>值,该怎么办?
$con = mysqli_connect('localhost','root','','wp') or die (mysqli_error('Error:'));
$query = mysqli_query($con,'set names utf8')or die (mysql_error());
$qy = mysqli_query($con,"SELECT ID,post_title FROM wp_posts WHERE post_type='page' AND post_status='publish'")or die (mysql_error());
$arr = array();
while ($row = mysqli_fetch_array($qy)){
$id = "?page_id=".$row['ID'];
$title = $row['post_title'];
$arr[] = $id . "=>" . $title;
array_push($arr, "$id" => "$title");
}
plz帮助我..
感谢^ _^
答
这里就是我会做,而不是:
$arr = array();
while ($row = mysqli_fetch_assoc($qy)){
$id = $row['ID'];
$arr[$id] = $row['post_title'];
}
然后当你需要打印他们:
foreach ($arr as $id => $title) {
echo "?page_id={$id}'>{$title}</a>";
// or whatever, depends on how you want to print it
}
不要存放不必要的信息:在阵列(即?page_id=
)。
答
你想干什么$arr[$id] = $title
?还是你想这一点:
if (!isSet($arr[$id])) {
$arr[$id] = array();
}
$arr[$id][] = $title;
前者将让这个$arr
包含$id=>$title
。如果有多个,后者将使$arr
包含$id=>array($title1,$title2,$title3)
等。
[使用array_push()以'key => object']的形式向数组添加元素的可能的重复(http://stackoverflow.com/questions/4772314/using-array-push-to-add -elements-to-an-array-in-the-form-of-key-object) – 2011-01-23 04:50:18