あるCSVのデータの、改行コードを置換したいと思っています。
改行を含む列があるので、ダブルクォーテーションで囲まれた改行を、<br>に変換したいのですが、うまく動作せず、良いお知恵を拝借できないものかと投稿させていただきます。よろしくお願いします。
CSVは以下の様な形です。
テスト,"改行した テスト",テスト
上記の「"改行した\nテスト"」を、「"改行した<br>テスト"」に変換しようとしています。
下記のコードでまず、改行コードを\nに統一を行いました。
$strには、csvが格納されています。
php
1$order = array("\r\n", "\r"); 2$replace = "\n"; 3$str = str_replace($order, $replace, $str);
その後、以下のコードで変換しようとしましたが、改行をすべて<br />にしてしまったようで…「行」として認識させたいCSVとしての機能が失われてしまいました。
php
1$str = str_replace($replace, "<br />", $str);
そこで、ダブルクォーテーション内の改行だけを置換したいのですが、preg_replaceなど使ってみたんですが、上手く動きません…。
良いお知恵を拝借できれば幸いです。よろしくお願いします。
回答4件
あなたの回答
tips
プレビュー