我有一个有很多(100-800)id的数组。我想查询我的数据库做一个查找id's从我的数组与任何匹配从数据库,然后保存匹配结果在一个新的数组。
我的数组:
//print_r($_POST["fb_friend_uid"])
Array
(
[0] => Array
(
[id] => 263901486
)
[1] => Array
(
[id] => 502533736
)
)
- 1。然后我试着看看数组中的任何值是否与数据库中的记录匹配- 这是正确的方法吗?:
$ids = join(',',$_POST["fb_friend_uid"]);
SELECT *
FROM vote WHERE
vote_fb_uid IN ($ids)
AND DATE(FROM_UNIXTIME(vote_time)) = DATE(NOW())";
——2。然后我努力将匹配的记录保存在一个新的数组中-这是我尝试过的:
while($row=mysqli_fetch_assoc($result)){
$savedResultsInNewArray=[$row['vote_fb_uid']];
}
我希望以以下格式返回新数组:echo json_encode($savedResultsInNewArray);
我有点不确定上面的方法是正确的吗?
第一部分是从数组中获取ID。你可以用一个循环来做到这一点:
<?php
foreach ($_POST["fb_friend_uid"] as $uid) {
$uids[] = $uid['id'];
}
$ids = join(',', $uids);
/*
* Query is correct
*
* SELECT *
* FROM vote WHERE
* vote_fb_uid IN ($ids)
* AND DATE(FROM_UNIXTIME(vote_time)) = DATE(NOW())";
*/
// For the returning part.
while($row=mysqli_fetch_assoc($result)){
$savedResultsInNewArray[] = $row['vote_fb_uid'];
}