需要查找数组,然后在存在(或不存在)数组值的地方运行MYSQL SELECT。
$symbol = "abc";
$sql = "SELECT * FROM around";
$results = $conn->query($sql);
foreach($results as $row) {
$stop = preg_replace("/[0-9]/", "", $row['tip']);
if ($stop == $symbol)
{$sword = $row['tip'];
}}
因此,在有多个输出的情况下,我们需要$sword作为数组。在我们有了这个数组之后,我们需要运行一个mysql查询,它只显示那些有$sword数组的查询。
$query = "
SELECT * FROM ms WHERE `big` = '$sword'";
$result = mysql_query( $query );
所以我们可以做一些类似的事情:
while ( $row = mysql_fetch_assoc( $result ) ) {
echo '"time": "' . $row['time'] . '",'; }
以下是将$sword转换为数组并在第二个查询中使用的代码:
$symbol = array("abc", "def", "ghi");
$sword = array();
$sql = "SELECT * FROM around";
$results = $conn->query($sql);
foreach($results as $row) {
$stop = preg_replace("/[0-9]/", "", $row['tip']);
if (in_array($stop, $symbol)) {
$sword[] = $row['tip'];
}
}
if ($sword) {
$in = '';
$sep = '';
foreach ($sword as $s) {
$in .= "$sep '$s'";
$sep = ',';
}
/* $in now contains a string like "'123abc123', '12abc12', '1abc1'" */
$query = "
SELECT * FROM ms WHERE `big` IN ($in)";
$result = mysql_query( $query );
while ( $row = mysql_fetch_assoc( $result ) ) {
echo '"time": "' . $row['time'] . '",';
}
}
现在我要去洗手,把所有的mysql_query都去掉…:-)