關於array_diff函數的問題

來源:互聯網
上載者:User
我用array_diff對比讀取到的txt檔案標題是否和我設定的一樣,其中最後一個欄位始終判定為不一樣,表面看最後一個欄位多了一個空格,我加了一個空格,也判定不一樣,請問我用什麼方法看txt檔案最後一個欄位的內容是什嗎??


回複討論(解決方案)

把??txt??base64,再看看是否相同。

可以把你的代碼粘貼出來嗎???

需要看到你的代碼和測試資料

private function CheckFileType($array){    $type="";    foreach($this->filetypearray as $name=>$value){        $ar=array_diff($array,$value);         if(empty($ar)){            $type=$name;        }       }    return $type;  }private   $filetypearray=array(                            'downloadfile'=>array('order-id','order-item-id','purchase-date','payments-date','buyer-email',                                                  'buyer-name','buyer-phone-number','sku','product-name','quantity-purchased','currency','item-price',                                                  'item-tax','shipping-price','shipping-tax','ship-service-level','recipient-name','ship-address-1',                                                  'ship-address-2','ship-address-3','ship-city','ship-state','ship-postal-code','ship-country',                                                  'ship-phone-number','delivery-start-date','delivery-end-date','delivery-time-zone',"delivery-Instructions ")   ); $order['28']='('.base64_encode($more[28]).')'; $order['29']='('.base64_encode($this->filetypearray['downloadfile'][28]).')';[28] => (ZGVsaXZlcnktSW5zdHJ1Y3Rpb25zDQ==)[29] => (ZGVsaXZlcnktSW5zdHJ1Y3Rpb25zIA==)

兩個欄位的base64結果,最後部分不一樣

那個DQ==是什嗎??我不加空格編碼就是ZGVsaXZlcnktSW5zdHJ1Y3Rpb25z

base64 編碼的:
DQ== 是斷行符號符 0x0d (chr(13))
IA== 是空格符 0x20 (chr(32))

一般情況下首尾的空白字元是可忽略的,所以宜 trim 一下
$ar = array_diff(array_map('trim', $array), array_map('trim', $value));

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.