大家好:我对阵列没有多少经验,但我正在努力学习。尝试一些新的东西并且不知道这是否可以这样做。基本上我要做的是通过一个wp数据库表;并记录下来; $ postnum值相当于WP post_id,并且在数据库中多次。所以我想只是鞭打表并在那里创建一个每个post_id($ postnum)的数组。所以我想,我需要做的就是在循环之外创建一个数组;然后在循环中检查$ postnum是否已经在数组中;如果它不只是添加它...那么所有具有相同postnum的记录都不会添加到数组...
这是我的代码:
$posts_counted=array();
global $wpdb;
foreach( $wpdb->get_results("SELECT * FROM wp_c93hh3bk23_pvc_daily") as $key => $row) {
$id = $row->id;
$time = $row->time;
$postnum = $row->postnum;
$postcount = $row->postcount;
if (in_array($postnum,$posts_counted))
{
array_push($posts_counted,$postnum);
}
} // close out foreach
我从未真正使用过" in_array"事物或" array_push"事情要么;所以这些对我来说都是新的...
我得到了:"解析错误:语法错误,意外' ' (T_STRING)in ..." 引用该行" if(in_array($ postnum,$ posts_counted))"
所以我想知道是否有人可以告诉我,我想做的事情是这样做还是我做错了...
谢谢!
答案 0 :(得分:1)
这是我从db获取数据的方式:
$sql= "Select * FROM table";
$result=mysql_query($sql);
while($rows = mysql_fetchArray($result)){
$data= $rows;
}
//checking if something is in array
if(in_array($data['id')){
//do something
}
//now how you want to get data
// echo json_encode($data)
//OUTPUT: {id:"1",name:"xyz"}
无论如何你想要你的" postNum" unique,在SELECT之后添加DISTINCT修复你的sql。