Символ перевода строки PHP_EOL
вместо переводов строк появляются только пробелы? Какая область ее применения? Только добавление header(«Content-type: text/plain»); помогает.
Отслеживать
943 6 6 серебряных знаков 24 24 бронзовых знака
задан 25 мар 2013 в 8:58
1,710 4 4 золотых знака 27 27 серебряных знаков 41 41 бронзовый знак
4 ответа 4
Сортировка: Сброс на вариант по умолчанию
Судя по всему вы смотрите через браузер. В код страницы посмотрите там будет перевод строки. А для браузера надо ставить

Отслеживать
ответ дан 25 мар 2013 в 9:01
3,890 14 14 серебряных знаков 23 23 бронзовых знака
проверил в файлы идет запись с переводом строчки.Не подскажите как идет запись в БД?
25 мар 2013 в 9:07
перефразируйте пожалуйста вопрос. т.к. если запись символа PHP_EOL то скорее всего 0 либо null но может и \r\n не проверял
25 мар 2013 в 9:18
вот эту переменную $str=’TOO’.PHP_EOL.’TOO’.PHP_EOL.’TOO’ вставить в БД.
25 мар 2013 в 9:21
да нормально закидает, как перевод строки
25 мар 2013 в 9:33
@koza4ok, а проверить самостоятельно уже никак?
25 мар 2013 в 9:40
Так лучше понятно:
"; echo 'TOO'.PHP_EOL.'TOO'.PHP_EOL.'TOO'; echo "".'TOO'.PHP_EOL.'TOO'.PHP_EOL.'TOO'.""; ?>
Отслеживать
4,966 10 10 золотых знаков 33 33 серебряных знака 62 62 бронзовых знака
ответ дан 24 мая 2014 в 7:19
31 1 1 бронзовый знакPHP_EOL может в себе содержать только два значения либо \r\n для windows платформ либо \n для остальных. Раньше — до версии 5.4 была и третье возможное значение \r для Mac OSX, но в версиях по старше это уже не актуально.
Отслеживать
ответ дан 19 мая 2016 в 14:19
Daniel Abyan Daniel Abyan
922 4 4 серебряных знака 10 10 бронзовых знаковВы можете использовать nl2br()
Отслеживать
ответ дан 26 мар 2016 в 5:28
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.3.2953
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Php eol что такое
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006
Откуда: Israel
Помог: 3 раз(а)
Секрет
Теперь, когда вы уже наверняка второпях отправили свой запрос,
я расскажу вам простой секрет, который сэкономит вам уйму ожиданий,
даже если первый ответ по теме последуем сразу же.
Само собой я знаю что ответят мне тут же, и если я посмотрю
на сообщения на форуме, то пойму что в общем то я и не ошибаюсь.
Но еще я точно замечу, что очень мало тем, в которых всего два ответа :
вопрос автора и еще два сообщение вида Ответ + Спасибо
После этого приходится начинать уточнять этим неграмотным что мне надо.
Они что, сами читать не умеют? А уточнять приходится.
И иногда пока они переварят то что я им скажу проходит и не одна ночь..
Уверен что если бы я им сказал что у меня есть
фиолетовый квадрат, и нужно превратить его в синий треугольник
и я пытался взять кисточку, макнуть в банку и поводить ей по квадрату
но почему то кисточка не принимала цвет краски в банке,
то на мой вопрос — где взять правильные банки мне бы ответили гораздо быстрее
предложив её открыть, а не тратить еще стольник на жестянку.
Поэтому с тех пор я строю свои вопросы по проверенной давным давно схеме:
Что есть
Что нужно получить
Как я пытался
Почему или что у меня не получилось.
На последок как оно происходит на форумах
Цитата:
Новичок: Подскажите пожалуста самый крепкий сорт дерева! Весь инет перерыл, поиском пользовался!
Старожил: Объясни, зачем тебе понадобилось дерево? Сейчас оно в строительстве практически не используется.
Новичок: Я небоскрёб собираюсь строить. Хочу узнать, из какого дерева делать перекрытия между этажами!
Старожил: Какое дерево? Ты вообще соображаешь, что говоришь?
Новичок: Чем мне нравиться этот форум — из двух ответов ниодного конкретного. Одни вопросы неподелу!
Старожил: Не нравится — тебя здесь никто не держит. Но если ты не соображаешь, что из дерева небоскрёбы не строят, то лучше бы тебе сначала школу закончить.
Новичок: Не знаите — лучше молчите! У меня дедушка в деревянном доме живёт! У НЕГО НИЧЕГО НЕ ЛОМАЕТСЯ.
Но у него дом из сосны, а я понимаю, что для небоскрёба нужно дерево прочнее! Поэтому и спрашиваю. А от вас нормального ответа недождёшся.
Прохожий: Самое крепкое дерево — дуб. Вот тебе технология вымачивания дуба в солёной воде, она придаёт дубу особую прочность:
Новичок: Спасибо, братан! То что нужно.
Отредактировано модератором: Uchkuma, 26 Апреля, 2011 — 10:21:12
Supported Versions
Each release branch of PHP is fully supported for two years from its initial stable release. During this period, bugs and security issues that have been reported are fixed and are released in regular point releases.
After this two year period of active support, each branch is then supported for an additional year for critical security issues only. Releases during this period are made on an as-needed basis: there may be multiple point releases, or none, depending on the number of reports.
Once the three years of support are completed, the branch reaches its end of life and is no longer supported. A table of end of life branches is available.
Currently Supported Versions
| Branch | Initial Release | Active Support Until | Security Support Until | |||
|---|---|---|---|---|---|---|
| 8.1 | 25 Nov 2021 | 2 years, 1 month ago | 25 Nov 2023 | 1 month ago | 25 Nov 2024 | in 10 months |
| 8.2 | 8 Dec 2022 | 1 year, 1 month ago | 8 Dec 2024 | in 10 months | 8 Dec 2025 | in 1 year, 10 months |
| 8.3 | 23 Nov 2023 | 1 month ago | 23 Nov 2025 | in 1 year, 10 months | 23 Nov 2026 | in 2 years, 10 months |
Or, visualised as a calendar:
Когда использовать константу PHP «PHP_EOL»
Когда лучше всего использовать PHP_EOL ?
Иногда я вижу ее в примерах кода PHP. Решает ли это проблемы завершения строки в системах DOS/Mac/Unix?
Ответ 1
Да, PHP_EOL якобы используется для поиска символа новой строки кроссплатформенным способом, поэтому это решает проблемы в DOS/Unix.
Обратите внимание, что PHP_EOL представляет собой символ конца строки для текущей системы. Например, он не найдет конечную строку Windows при выполнении в unix-подобной системе.
Ответ 2
Начиная main/php.h с версии PHP 7.1.1 и версии 5.6.30:
#ifdef PHP_WIN32
# include «tsrm_win32.h»
# include «win95nt.h»
# ifdef PHP_EXPORTS
# define PHPAPI __declspec(dllexport)
# else
# define PHPAPI __declspec(dllimport)
# endif
# define PHP_DIR_SEPARATOR ‘\\’
# define PHP_EOL «\r\n»
#else
# if defined(__GNUC__) && __GNUC__ >= 4
# define PHPAPI __attribute__ ((visibility(«default»)))
# else
# define PHPAPI
# endif
# define THREAD_LS
# define PHP_DIR_SEPARATOR ‘/’
# define PHP_EOL «\n»
#endif
Как видите, PHP_EOL может быть «\r\n» (на серверах Windows) или «\n» (на любом другом). В версиях PHP до 5.4.0RC8 было возможно третье значение для PHP_EOL : «\r» (на серверах MacOSX). Это было неправильно и было исправлено 01.03.2012 с ошибкой 61193 .
Вы можете использовать PHP_EOL в любом виде вывода (где допустимы любые из этих значений — например, HTML, XML, журналы . ), где вы хотите использовать унифицированные символы новой строки . Имейте в виду, что значение определяет сервер, а не клиент. Пользователи Windows будут получать выгоду от вашего сервера Unix, что иногда для них неудобно.
Ответ 3
Вы используете PHP_EOL, когда вам нужна новая строк а и вы хотите использовать кроссплатформенный подход. Это можно применять при записи файлов в файловую систему (журналы, экспорт и другие). Вы можете использовать это, если хотите, чтобы сгенерированный вами HTML был читабельным. Поэтому вы можете сопровождать ваш
символом PHP_EOL. Также это можно использовать, если вы запускаете php как скрипт из cron и вам нужно вывести что-то и отформатировать это для экрана. Или, если вы создаете письмо для отправки, которое нуждается в форматировании.
Ответ 4
Я бы хотел добавить ответ на вопрос « Когда не следует его использовать » , поскольку он еще не рассматривался, и я могу представить, что он используется вслепую, и никто не замечает проблемы до тех пор, пока не появится проблема. Некоторые из этих вопросов несколько противоречат некоторым существующим ответам.
При выводе на веб-страницу в HTML, особенно текста в , или , вы, вероятно, всегда захотите использовать \n, а не PHP_EOL.
Причина этого в том, что хотя код может хорошо работать на одном сервере – который является Unix-подобной платформой – при развертывании на хосте Windows (например, на платформе Windows Azure ) о н может изменить отображение страниц в некоторых браузерах (в частности, в Internet Explorer , некоторые версии которого будут видеть и \n, и \r).
Я не уверен, осталась ли эта проблема со времен IE6 или нет, так что это может быть довольно спорным, но, считаю необходимым предупредить, если это поможет людям задуматься о контексте. Могут быть и другие случаи (например, строгий XHTML), когда вывод \r’ на некоторых платформах может вызвать проблемы с выводом, и я уверен, что есть и другие подобные случаи. Как уже было отмечено, вы не захотите использовать его при возврате HTTP-заголовков , поскольку они всегда должны соответствовать RFC на любой платформе.
Я бы не стал использовать его для чего-то вроде разделителей в CSV-файлах. Платформа, на которой работает сервер, не должна определять окончания строк в генерируемых или потребляемых файлах.
Ответ 5
Я нашел PHP_EOL очень полезным для работы с файлами, особенно если вы записываете в файл несколько строк содержимого. Например, у вас есть длинная строка, которую вы хотите разбить на несколько строк при записи в обычный файл. Использование \r\n может не сработать, поэтому просто добавьте PHP_EOL в свой скрипт, и результат будет потрясающим. Посмотрите на этот простой пример ниже:
$output = ‘ Это строка 1’ . PHP_EOL .
‘ Это строка 2’ . PHP_EOL .
‘ Это строка 3’;
$file = «filename.txt»;
if (is_writable($file))
// В нашем примере мы открываем $file в режиме append.
// Указатель файла находится в конце файла, следовательно.
// именно туда попадет $output, когда мы запишем его через fwrite().
if (!$handle = fopen($file, ‘a’))
echo «Не удалось открыть файл ($file)»;
exit;
>
// Записываем $output в наш открытый файл.
if (fwrite($handle, $output) === FALSE)
echo «Не удалось записать в файл ($file)»;
exit;
>
echo «Успех, содержимое ($output) записано в файл ($file)»;
fclose($handle);
> else
echo «Файл $file не доступен для записи»;
>
?>
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.