2016-07-21 30 views
1

$imeiserial我有123,222,333$imeitransferserial我有123,222。我只是想顯示這兩個數組之間的差異的價值,我使用這個代碼,但它給了我錯誤: Array to string conversion我做錯了什麼?或者我需要在這個功能更多的轉換?陣列與數據庫的區別

$imei=$row["IMEI_MX"]; 
$imeiserial = explode(',', $imei); 
$imeitransfer=$row2["IMEI_MX"]; 
$imeitransferserial = explode(',', $imeitransfer); 

$a1=array($imeiserial); 
$a2=array($imeitransferserial); 

$result= array_diff_assoc($a1,$a2); 
+0

確認'$ imei'和'$ imeitransfer'都是字符串。 – Bailey

回答

3

$a1 = array分配是多餘的。剛剛離開它:

$a1 = $imeiserial; // no need to put inside an array 
$a2 = $imeitransferserial; // once exploded, they are already an array 

而且使用*_assoc味道沒有什麼意義,你的鑰匙是數字,只需使用array_diff

$result = array_diff($a1,$a2); 
+0

正確和非常快+10 –

+0

它給了我這樣的錯誤注意:未定義的變量:imeitransferserial在線65上的C:\ xampp \ htdocs \ excel \ tryy.php 警告:array_diff():參數2不是數組在C:\ xampp \ htdocs \ excel \ tryy.php在線66 –

+0

@CarlosJhonmanlulu你有責任檢查'$ imei = $ row [「IMEI_MX」]; $ imeiserial = explode(',',$ imei); $ imeitransfer = $ row2 [「IMEI_MX」]; $ imeitransferserial = explode(',',$ imeitransfer);'所有這些變量是否設置。去檢查通過打印出來 –