使用fgetcsv() 從CSV 檔案建立陣列的努力
正如您所提到的,從CSV 檔案建立陣列當欄位包含多個逗號時,使用fgetcsv() 可能會遇到挑戰。為了解決這個問題,我們將深入研究使用強大的 fgetcsv() 函數的替代方法。
著手解決方案
成功的關鍵在於利用 fgetcsv () 能夠逐行解析 CSV 並根據指定的分隔符號(通常是逗號)分隔欄位。讓我們分解解決方案:
$file = fopen('myCSVFile.csv', 'r'); while (($line = fgetcsv($file)) !== FALSE) { // $line is now an array of individual CSV elements print_r($line); } fclose($file);
分解
處理潛在錯誤
為了穩健性,必須在 fopen() 周圍包含錯誤檢查以處理潛在的文件存取問題。這可確保程式碼正常處理此類錯誤,而不會突然終止。
範例輸入
為了說明此解決方案如何處理多個逗號,讓我們考慮以下CSV 檔案範例:
Scott L. Aranda,"123 Main Street, Bethesda, Maryland 20816",Single Todd D. Smith,"987 Elm Street, Alexandria, Virginia 22301",Single Edward M. Grass,"123 Main Street, Bethesda, Maryland 20816",Married Aaron G. Frantz,"987 Elm Street, Alexandria, Virginia 22301",Married Ryan V. Turner,"123 Main Street, Bethesda, Maryland 20816",Single
成功解析
當您使用此CSV當檔案執行程式碼時,您將觀察到每一行都被成功解析為一個數組,其中各個元素代表姓名、地址和婚姻狀況。這包括具有多個逗號的字段,例如地址,它們被正確保留為單個元素。
以上是如何使用 fgetcsv() 高效解析 CSV 檔案以處理包含多個逗號的欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!