0

私はフュージョン チャートを備えたアプリを持っており、彼がユーザーにいくつかのグラフをレンダリングするために XML を生成する必要があります。ただし、この XML 文字列は改行などを含めずにインラインである必要があります。しかし、グラフ データを取得するクエリを実行すると、これらのブレーク ラインを含む列が表示されます。

文字列でこのフォーマットを試しました:

$txt = trim($txt);
$txt = str_replace("\r\n", " ", $txt);
$txt = preg_replace('~[\n|\r|\n\r|\r\n]{2,}~', " ", $txt);

これは、この問題のあるデータの例です。

- Eixo Inferior Entrada Com Camisa

- Montar As Calhas Aparafusadas Conforme Posição Anterior.
- Montar O Rodete Z15 - Ext. 1200.
- Manter A Identificação Na Peça.

データベース: Oracle - 列のデータ型: Varchar2

4

2 に答える 2

2

試す:

$txt = preg_replace('~(*BSR_ANYCRLF)\R~', " ", $txt);
$txt = trim($txt);

すべての区切りをスペースに置き換え、結果をトリミングします。

Unicode をサポートしたい場合、これは utf-8 バリアントです:

$txt = preg_replace('~\R~u', " ", $txt);
$txt = trim($txt);

PHP のさまざまな改行スタイルを最もスマートな方法で置き換える方法を参照してください。より詳細な情報とともに。

于 2011-11-10T16:58:09.660 に答える
0

グラフ データに Linux 形式の改行 ("\n") が含まれている場合、試みた書式は "\r\n" にのみ一致するため機能しません。

このコードは、Windows スタイルと Linux スタイルの両方の改行のデータをクリアする必要があります。

$txt = trim($txt)
$txt = str_replace("\r", " ", $txt);
$text = str_replace("\n", " ", $text);
于 2011-11-10T16:56:21.837 に答える