PHP生成CSV之內部換行

青葉發表於2019-02-16

當我們使用PHP將採集到的檔案內容儲存到csv檔案時,往往需要將採集內容進行二次過濾處理才能得到需要的內容。比如網頁中的換行符,空格符等等。

對於空格等處理起來都比較簡單,這裡我們單獨說說換行符的處理。

換行符在html中一般有3種寫法:

 1. <br>
 2. <br/>
 3. <br />

那麼當我們知道原始需要處理的目標後,下一步自然就是要著手處理了。

可是怎麼處理呢?如果直接使用換行符,在csv檔案中就會被認為是跳到整體的下一行,而非我們這裡的需求了。

答案很簡單,就是在所需要處理的檔案兩邊加上雙引號,然後在裡面替換換行符就好了。

請看下面我程式中的原始碼:

$description_value = `"`.str_replace(array(`,`,`&nbsp;`,`<br>`,`<br/>`,`<br />`),array(`,`,` `,PHP_EOL,PHP_EOL,PHP_EOL),$description_value).`"`;

這裡我是將幾個空格,逗號和換行都進行了替換處理,為了防止平臺換行符差異,使用了PHP內建的常量PHP_EOL,其他的大家可根據自己需求進行新增或減少。

在書寫拼接過沖中尤其要注意中英文的符號別錯了哦。

相關文章