PHP прарыў у новы радок

I have my textarea data called from db, which data expected to show in new line without
along, how can I break the
and show in textarea into a new line?

My database column is stored as hello
world
exactly as well.

enter image description here

Дзякуючы.

0
Вы павінны захоўваць дадзеныя ў базе дадзеных, а не фарматаванне. Вы хочаце мець
ці не ў вашым тэкставае поле?
дададзена аўтар Ja͢ck, крыніца
^ Лепшы адказ/каментар Я прачытаў у гэтай тэме да гэтага часу.
дададзена аўтар thpl, крыніца

7 адказы

Тое, што вы павінны зрабіць, гэта НЕ крама HTML ўнутры вашай базы дадзеных у першую чаргу.

  1. Тэкст Захоўваць у базе дадзеных, захоўваючы ў якасці новага радка "\ п" .

  2. Пасля рэндэрынгу на старонцы, выкарыстоўвайце nl2br (htmlspecialchars ($ вул, ENT_QUOTES, 'UTF-8')) .

3
дададзена

Тое, як я гэта зрабіць у HTML5 гэта пакласці шмат прасторы паміж лініяй 1 і лініяй 2.

Гэта трохі брудны хак, але гэта працуе.




Захаванне гэтага шмат белага-прасторы ў базе дадзеных не можа быць ідэальным, але я не разумею, чаму гэта не будзе працаваць.

2
дададзена
Як вы кажаце, захоўвання не трэба белае-прастора ў базе дадзеных не з'яўляецца ідэальным. Дык чаму выкарыстанне неэфектыўнага рашэння, калі ёсць значна больш эфектыўныя падыходы (ужо пісаў тут). Працоўны код! = Добры код
дададзена аўтар thpl, крыніца

If it is only for new lines, you can use str_ireplace

$text = str_ireplace("
", "\n", $text); $text = str_ireplace("
", "\n", $text);
1
дададзена

выкарыстоўваць:

$text = 'This is some text
With a line break in it'; $text = str_replace('
', "\n", $text); // Outputs: This is some text with a line break in it

Пераканайцеся, што \ п параметр у str_replace паміж падвойнымі двукоссямі. Гэта не будзе працаваць паміж адзінарнымі двукоссямі.

1
дададзена

Тое, што я хацеў бы зрабіць, гэта вызначэнне многостроковых радкоў у масівы накшталт гэтага:

$output = array();
$output[] = 'Hello
'; $output[] = 'World.
'; $output[] = '
'; $output[] = 'This is a test.'; echo implode("\r\n", $output);

Гэта будзе вяртаць HTML-код:

Hello
World.

This is a test.
1
дададзена

Вы можаце выкарыстоўваць UrlEncode і urldecode , які я выкарыстоўваю для падобнай рэчы, напрыклад:

Захоўваеце вашыя дадзеныя ў базе дадзеных, як гэта:

$html       = urlencode($_POST['content']);

з нармальным запытам, як гэта:

INSERT INTO table (Content) VALUES ('".$html."')

А затым атрымаць яго з БД з дапамогай гэтага:

$strSQL1    ="SELECT Content FROM table;
$objQuery1  = mysql_query($strSQL1);
$objResult1     = mysql_fetch_array($objQuery1); 

$show       = urldecode($objResult1["Content"]); 

А затым запоўніць тэкставае поле з гэтым:




1
дададзена

як наконт

str_replace('
', PHP_EOL, 'hello
world')
0
дададзена