2011-06-14 124 views
1

我检索了一个查询并试图将id列存储在数组中。然后我检查两个阵列找到共同使用array_intersect FUNC ....如何将查询中检索到的值存储在一个php数组中

<?php 

    $a=array(10); 
    $connection = mysql_connect("localhost","root",""); 
    $db=mysql_select_db("data",$connection); 
    $res=mysql_query("select * from usertable"); 
    $i=0; 
    while($row=mysql_fetch_array($res)) 
    { 
    $a[i]=$row["id"]; 
    $i++; 
    } 
    echo $a[1]; 
    $fb_usr_id =json_decode( $_POST['fb_user'], true); 
    $arr=array($fb_usr_id); 


    $result = array_intersect($arr, $a); 
    print_r($result); 
    ?> 

是其中我存储在检索到的值在阵列是正确...的方式??这段代码的 和输出是:

阵列()

+0

这是完全正常的,你所采取的方式。这只意味着两个数组之间没有连接 – Neal 2011-06-14 15:16:21

回答

-1

我会做这样

<?php 

    $a; 
    $connection = mysql_connect("localhost","root",""); 
    $db=mysql_select_db("data",$connection); 
    $res=mysql_query("select id from usertable"); 
    $i=0; 
    while($row=mysql_fetch_array($res)) 
    { 
    $a[]=$row["id"];  
    } 
    echo $a[1]; 
    $fb_usr_id =json_decode( $_POST['fb_user'], true); 
    $arr=array($fb_usr_id); 


    $result = array_intersect($arr, $a); 
    print_r($result); 
    ?> 
+0

虽然'$ a []'确实比推送到数组更好,但据我所知,您的代码在功能上与OP相同,因此不会解决这个问题。 – 2011-06-14 15:17:18

+0

尼斯tomalak,$ a []和没有id,并且查询优化为只加载id,jap同一个 – 2011-06-14 15:18:08

+0

啊,是的,那也是。但是,优化与解决方案并不相同。 – 2011-06-14 15:31:24

0

这是完全正常的,你所采取的方式。

你的结果只是表示2个数组之间没有连接。

我不知道你为什么做$arr=array($fb_usr_id);你把一个数组放入数组中?

删除该行应该会得到正确的结果。

现在你是比较array(array(...))array(...)将永不相交

+0

@Neal当我在这一行中删除该数组..我在array_intersect func中得到一个错误,因为第一个参数不是数组? – learn 2011-06-14 15:22:20

+0

@learn,如果你做'print_r($ fb_usr_id)',你会得到什么? – Neal 2011-06-14 15:23:12

+0

@learn,还有'$ _POST ['fb_user']'里面是什么? – Neal 2011-06-14 15:23:44

相关问题