2014-04-01 71 views
-1

我需要使用\ n替換mysql數據庫中換行符的幫助。 如果我複製MySQL的文本和過去在微軟的Word,我有這樣的:用' n'替換斷線

image 1

我需要替換\ n折斷線。就像這樣:

image 2

這有任何MySQL命令和一個PHP或JavaScript功能?

謝謝。

+0

微軟Word?真! – adeneo

+0

我沒有-ve許可,但-ve! – dlyaza

+0

Php函數'nl2br(...)' – Bellash

回答

2

在PHP中有一個名爲nl2br

echo nl2br("hello\nWorld"); 

功能,其結果是

hello<br/>World 

在SQL中有一個在JavaScript中你被點名REPLACE

UPDATE yourtable SET field=REPLACE(REPLACE(field, CHAR(13), ''), CHAR(10), '') 

終於功能也有replace

myString = myString.replace(/\r?\n/g, ""); 

好運

+0

瞭解更多關於這個函數http://au2.php.net/nl2br – Bellash

+0

謝謝,但我不需要用'\ n'替換html'
'。我只需要用'\ n'字符替換換行符。 – ptCoder

+0

看到我編輯的答案,現在你有三個函數('Php','Sql'和'javaScript')... – Bellash

0

嘗試nl2br

<?php 
$result = nl2br($row['MYSQL_RESULT']); // from the return from your query 
?> 
+0

謝謝,但我不需要將'\ n'替換爲html'
'。我只需要用'\ n'字符替換換行符。 – ptCoder

1

如果微軟Word在解析與換行符的文本,這意味着它已經有他們的PHP。

使用像notepad ++這樣的文本編輯器並將其設置爲顯示所有字符。你會看到什麼特殊的字符被用作換行符(它可能是\ n,\ r和兩者的混合)。

當你用phpmyadmin瀏覽你的數據庫時,它們不會顯示出來,因爲它的textarea控件會爲你解析換行符。

+0

謝謝,但我不需要用'\ n'替換html'
'。我只需要用'\ n'字符替換換行符。 – ptCoder

1

我不知道我是否正確理解輸入字符串,但是如果代碼看起來像這樣。

function replace_lb($str){ 
    return str_replace(array(chr(10), chr(13)), '\n', $str); 
    } 

用法:

$query = mysql_query('SELECT `id`,`value` FROM table ', $link); 
    while ($result = mysql_fetch_array($query)){ 
    mysql_query('UPDATE table SET `value`= "'.replace_lb($result['value']).'" WHERE id="'.$result['id'].'"', $link); 
    } 

的代碼可以使用一些optimalization,但我認爲這將滿足您的需求

+0

是的,它的工作原理。謝謝。 – ptCoder