在这里尝试做的最好的方法是创建第三个数组来合并结果,然后使用它.像这样:
$db1 = new PDO('mysql:host='.$db_host1.';dbname='.$db_name1,$db_username1,$db_pass1);
$db2 = new PDO('mysql:host='.$db_host2.';dbname='.$db_name2,$db_username2,$db_pass2);
$db1->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
$db2->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
$today = date("Y-m-d");
$query = "SELECT * FROM events WHERE event_start >= $today ORDER BY events ASC";
$stmt1 = $db1->query($query);
$stmt2 = $db2->query($query);
$results = array_merge($stmt1->fetchAll(PDO::FETCH_ASSOC), $stmt2->fetchAll(PDO::FETCH_ASSOC));
// Then sort the new array, perhaps something like this
$events = array();
foreach ($results as $key => $row){
$events[$key] = $row['events'];
}
array_multisort($key, SORT_ASC, $results);
print_r($results);
我不确定你在活动领域的订购情况;但是,按照相同的标准订购新的$results数组应该相对容易.检查PHP Array Sorting以获得适当的排序算法.