需要查找两个数组是否匹配,然后匹配它们匹配的mysql行中的pull数据。我应该使用
$sql = "SELECT * FROM around";
$resultsd = $conn->query($sql);
foreach($resultsd as $rowd) {}
if (array_intersect($ar1, $ar2)) {
$sword[] = $rowd['TIM'];
}
或者我应该使用
if (in_array($ar1, $ar2)) {
$sword[] = $rowd['TIM'];
}
获取类似的数组:
$ar1[] = $rowd['nim'];
$ar2[] = $rowd['nim'];
然后如何拉动它们匹配的特定行?
我看到它们匹配,并打印出阵列没关系:
Array ( [0] => dcbabcbded ) Array ( [0] => fafeafaebee [1] => afabfdefcbb [2] => dcbabcbded
但是当我尝试回显它们匹配的mysql数据时,我失败了:
Array ( )
答案 0 :(得分:0)
我会使用sql IN
子句。
您有一系列客户名称:$a = array('john','rob','paul');
implode array $nms = join(',',$a);
制作sql:'SELECT * FROM tabl WHERE name IN ('.$nms.')';
首先进行数组交集(或者你只需要...)以获得所需名称的数组。
答案 1 :(得分:0)
使用$new = array_intersect(Array ( [0] => dcbabcbded ), Array ( [0] => fafeafaebee [1] => afabfdefcbb [2] => dcbabcbded))
:然后按照上面的答案中的说明制作有效的SQL。
如果你确定你总是拥有一个或没有值的数组intersen,那么使用第一个数组元素:$ar[0]
使用sql WHERE
子句创建sql。