我沒有要求導入來自客戶的訂單,這將含有作爲他們的客戶數據,即第一行約4字段CSV解析器,用於在一個csv文件報頭和細節上的線
customer number, order date, order no, delivery date
下一個X行數將包含需要product code
和quantity
的兩個字段。
我有其他程序,將拉入標準的價格清單等,並解析,但我很努力得到我的頭如何將CSV文件拆分成兩個不同的部分。
如何可以做到這一點任何幫助或想法可以理解
我沒有要求導入來自客戶的訂單,這將含有作爲他們的客戶數據,即第一行約4字段CSV解析器,用於在一個csv文件報頭和細節上的線
customer number, order date, order no, delivery date
下一個X行數將包含需要product code
和quantity
的兩個字段。
我有其他程序,將拉入標準的價格清單等,並解析,但我很努力得到我的頭如何將CSV文件拆分成兩個不同的部分。
如何可以做到這一點任何幫助或想法可以理解
我會建議使用此庫,其將通過name
類似於SQL結果數組
customer number, order date, order no, delivery date
給你列解析它在一個你想要的方式https://github.com/parsecsv/parsecsv-for-php
例如
require_once 'parsecsv.lib.php';
$csv = new parseCSV('data.csv');
print_r($csv->data);
嗨,我看到庫中有一個偏移量和限制參數。所以我將能夠對文件右側運行兩個查詢,1爲標題行,然後偏移細節行? – 2014-10-09 07:24:56
我認爲它確實在特徵中看到[github repo](https://github.com/parsecsv/parsecsv-for-php):「用於過濾數據的基本類SQL條件,偏移和限制選項」。 – Saqueib 2014-10-09 07:27:20
使用parsecsv library你可以這樣做:
//get customer data first
// limit the number of returned rows.
$csv->limit = 1;
// Parse 'order.csv' using automatic delimiter detection.
$csv->auto('order.csv');
//retrieve the customer data
$customer_data = $csv->data;
//get order details after
//skip the first line
$csv->offset = 1;
// Parse 'order.csv' using automatic delimiter detection.
$csv->auto('order.csv');
$order_details = $csv->data;
哦,夥計,我希望我早些時候在我的生活中找到了這個圖書館,非常感謝你爲大家提供的幫助。不知道誰爲正確的答案而感謝,因爲所有的幫助,但我會說Saqueib建議這個圖書館 – 2014-10-09 08:04:38
如果它只是在第一行,爲什麼不跳呢?它不是CSV的真正組成部分,只是其元數據。通過跳過它,我的意思是將該行作爲單獨的進程來讀取。 – Anthony 2014-10-09 07:11:08
嗨安東尼,對不起,我應該說,第一行將包含實際的標題數據,而不是列標題,其餘的行將包含行項目。所以沒有標題等,因爲非常少量的字段只有兩個單獨的類型;) – 2014-10-09 07:18:34
@ Anthony的建議仍然成立,您可以分別讀取第一行的數據並閱讀其餘的內容,然後在內部一起使用它們。 – 2014-10-09 07:23:10