SplFileObject::setCsvControl()函式用於設定CSV檔案的分隔符和引用字元。
用法:
SplFileObject::setCsvControl(string $delimiter = ",", string $enclosure = "\"", string $escape = "\\")
引數:
$delimiter
:CSV檔案的欄位分隔符,預設為逗號,
。$enclosure
:CSV檔案的欄位引用字元,預設為雙引號"
。$escape
:CSV檔案的跳脫字元,預設為反斜槓\
。
示例:
$file = new SplFileObject("data.csv");
$file->setCsvControl(",", "\"", "\\"); // 設定CSV檔案的分隔符為逗號,引用字元為雙引號,跳脫字元為反斜槓
foreach ($file as $row) {
$data = $file->fgetcsv();
// 處理CSV資料
}
在上面的示例中,我們使用SplFileObject開啟了一個名為"data.csv"的CSV檔案,並使用setCsvControl()函式設定了CSV檔案的分隔符為逗號,引用字元為雙引號,跳脫字元為反斜槓。然後,我們使用foreach迴圈讀取檔案的每一行資料,並使用fgetcsv()函式解析每一行的CSV資料。根據設定的分隔符、引用字元和跳脫字元,解析後的資料將會被正確地處理。