2012-06-22 2 views
0

Почему моя строка не работает?Новая строка на PHP не работает

for($n=1; $n<=100; $n++) 
{ 
    echo $n '\n'; 
} 
?> 
+1

См http://php.net/manual/en/language.types.string.php – flowfree

+0

Я считаю, вы должны сцепить 'Эхо $ п. '\ n'; 'попробуйте это. И попробуйте использовать '' 'вместо' ''. –

+0

Вы используете это в веб-браузере? Вместо этого он должен быть «
», так как html не выполняет стандартные разрывы строк '\ n'. –

ответ

0

новые строки игнорируются в HTML. Используйте вместо этого <br />:

for($n=1; $n<=100; $n++) 
{ 
    echo $n . '<br />'; 
} 
0

Используйте оператор dot (.) для конкатенации строк.

echo $n . "\n"; 
6
  1. Вы синтаксическая ошибка там, он должен быть $n . '\n'
  2. Вы используете ' одиночных кавычки процитировать новую строку (\n), таким образом, это интерпретируется как буквальный \ и n, изменить код чтобы: $n . "\n", чтобы он выводит в качестве новой строки

Окончательного код:

for($n = 1; $n <= 100; $n++) 
{ 
    echo $n . "\n"; // or "$n\n" (thanks @ring0 for pointing that out) 
} 
+0

' { echo "$ n \ n";} ' –

0

Он должен быть в doule кавычки:

Echo $n . "\n"; 
+0

Все еще не работает –

+0

@bsdnoobz Alt key на моем телефоне иногда не работает, как в данном случае. –

0

Во-первых, ваша конкатенация неправильная. Он должен быть

echo $n ."\n"; 

Следующая вещь, если вы используете его для вывода в браузере, вы должны использовать <br />

echo $n."<br />"; 

Если вы пишете в файлы или консоли, и вы хотите быть независимым от платформы используйте PHP_EOL

echo $n.PHP_EOL 
0

Ну, и помните, что персонажи Newline полностью игнорируются в HTML (в противном случае вы должны были бы сделать разметку на одной строке!)

Если вы хотите получить этот эффект, я бы рекомендовал обернуть свой вывод в nl2br, который преобразует ваши строки в HTML-перерывы «
», чтобы они отображались правильно.

nl2br($n . "\n"); 

или просто

echo $n . "<br>"; 
Смежные вопросы