Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/231: Рейтинг темы: голосов - 231, средняя оценка - 4.71
8 / 8 / 1
Регистрация: 23.09.2009
Сообщений: 134

Переход на новую строку при записи в файл.

02.12.2010, 23:44. Показов 42896. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<? 
@ $fin = fopen("menu.txt", "r") or die("File Menu not found!");
$fout = fopen("links.php", "w");
fwrite($fout, '<?php $go = "home"; $page = "home.html"; ');
fwrite($fout, 'if (isset($_GET[\'go\'])) '); 
fwrite($fout, '{$go = $_GET[\'go\']; switch($go){ ');
while (!feof($fin)) {
   $line = fgets($fin);
        $data = explode(";", $line);
        $link = $data[3]; 
        $nm = $data[2];
fwrite($fout, 'case "'.$link.'": $page = "'.$nm.'"; break; ');
}
fwrite($fout, '} } ?>');
fclose($fin);
fclose($fout);
?>
Скрипт работает нормально. В итоге получается рабочий файл который выполняет нужные функции.

Но в полученном файле всё в одну строку записывается.

Пробывал: \n, \r\n, но не работает.

Подскажите как решить проблему. . .
Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2010, 23:44
Ответы с готовыми решениями:

Переход на новую строку при записи в файл
Вот скрипт &lt;?php $file=fopen('mes.txt','a+'); fwrite($file,$_POST); fwrite($file,$_POST); fwrite($file,$_POST); ...

Не переносит на новую строку при записи в файл
Решил сделать такой скриптик. Есть текстовый файл с строками типа: Задача - удалить слово &quot;два&quot; и все что после него....

Переход на новую строку
Добрый день.Нужно написать следующий скрипт Сетка состоит из ячеек с номерами от 1 до N (N - максимальное число - указывается в...

9
Почетный модератор
 Аватар для Humanoid
11551 / 4346 / 452
Регистрация: 12.06.2008
Сообщений: 12,452
03.12.2010, 08:38
Цитата Сообщение от Sven_0007 Посмотреть сообщение
Пробывал: \n, \r\n, но не работает
Такие символы можно использовать только в двойных кавычках. Можно "Первая строка\r\nВторая строка"... но не получится, если записать 'Первая строка\r\nВторая строка'.
1
8 / 8 / 1
Регистрация: 23.09.2009
Сообщений: 134
03.12.2010, 16:20  [ТС]
А как тогда реализовать в моём случае?
0
Почетный модератор
 Аватар для Humanoid
11551 / 4346 / 452
Регистрация: 12.06.2008
Сообщений: 12,452
03.12.2010, 18:06
Можно так:
PHP
1
2
3
fwrite($fout, "<?php \$go = \"home\"; \$page = \"home.html\";\r\n");
fwrite($fout, "if (isset(\$_GET['go']))\r\n"); 
fwrite($fout, "{\$go = \$_GET['go'];\r\nswitch(\$go){\r\n");
А можно так:
PHP
1
2
3
4
5
6
7
$s=<<<END
<?php \$go = "home"; \$page = "home.html";
if (isset(\$_GET['go']))
{\$go = \$_GET['go'];
switch(\$go){
END;
fwrite($fout,$s);
1
1 / 1 / 0
Регистрация: 21.07.2015
Сообщений: 8
17.10.2015, 11:42
Всё до предела просто! Символ \n является силовом переноса только в UTF-8. Преобразуйте тот файл куда надо записывать данные в кодировку UTF-8. Так же очень важно чтоб кавычки были не одинарные а двойные. Так же не советую открывать файл через обычный блокнот, так как он не поддерживает этой кодировки и записи будут такие же, в строчку. Используйте для просмотра notepad++

Простой пример
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$conn = $_SERVER['HTTP_USER_AGENT']. ' : '.$_SERVER['REMOTE_ADDR']." \n";
$path = "connects.txt";
$file = fopen($path, "a");
if(file_exists($path)) {
    fwrite($file, $conn);
    fclose($file);
    echo "Данные записаны";
} else {
    echo "Файла не существует";
}
?>
Вот что получится
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0 : 127.0.0.1
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0 : 127.0.0.1
В кодировке ANSI, которая используется во всех Win тоже должен быть такой символ. Но я его не нашёл
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
17.10.2015, 11:59
Цитата Сообщение от Sven_0007 Посмотреть сообщение
Пробывал: \n, \r\n, но не работает.
Есть такая константа: PHP_EOL
1
1 / 1 / 3
Регистрация: 02.05.2014
Сообщений: 8
22.07.2016, 18:14
PHP
1
2
3
<?php
echo "<br>";
?>
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
22.07.2016, 18:42
Товарищ Хаир, последнему ответу 9 месяцев, правильный ответ был дан, твой ответ неверный.
0
0 / 0 / 0
Регистрация: 09.09.2018
Сообщений: 2
03.11.2018, 19:51
Хаир, учи матчасть
0
 Аватар для CoderHuligan
1743 / 1008 / 257
Регистрация: 30.06.2015
Сообщений: 5,107
Записей в блоге: 56
04.11.2018, 11:40
ДиманДиманЛинда
Это у нас зовётся некропостингом.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.11.2018, 11:40
Помогаю со студенческими работами здесь

Переход на новую строку php
Есть код вида $content = &quot;строка 1\n строка 2\n строка 3&quot;; ...

Убрать переход на новую строку
Есть форма, в которой кнопка. &lt;form method=&quot;POST&quot; action=&quot;account?login&quot;&gt; &lt;input type=&quot;submit&quot; name=&quot;enter&quot; value=&quot;Вход&quot;&gt;...

По чему не работают переход на новую строку и табуляция.
Всем привет. Скажите пожалуйста, почему не рабоает переход на новую строку и табуляция в следующем коде: &lt;?php $kav=&quot;bla \n\r...

Как сохранить текст в MySQL и не терять переход на новую строку?
После хранения текста из textarea в MySQL ДБ и получения этого текста в РНР страницу у меня теряются переходы на новую строку.

Синтаксис записи перехода на новую строку
$qerr = 'Query: '.$set.&quot;&lt;br&gt;&lt;br&gt;\nError: &quot;.mysqli_error($dblink); file_put_contents('./logs/mysql.log', strip_tags($qerr).&quot;\n\n&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru