Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> file_get_contents мистика 
:(
    Опции темы
YahоО
Дата 1.2.2021, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 11.6.2015

Репутация: нет
Всего: 1



Есть не маленький текстовый файл, пытаюсь его прочесть:
Код

$text=file_get_contents("text.txt");

не читается, укоротил вдвое, не читается, укорачивал до тех пор пока не удалил слово  "24paybank.info" и текст начал нормально считываться из файла на диске, но из текста осталось всего ничего.
Оказывается в тексте есть еще как то слова которые не позволяют работать с файлом, их еще предстоит искать и удалять или заменять синонимами.
Если просто напечатать слово:
Код

echo "24paybank.info";

то все нормально отображается.
Получается что php не тормозится при виде слова "24paybank.info", и file_get_contents считывает текст их файла, но какие то символы не печатаются с помощью echo.
Почистил текст, удалил все кусочки текста содержащие сомнительные символы
Код

if( $var<10 || ($var > 10 && $var < 45 )   || ($var > 57 && $var < 64 ) || ($var > 90 && $var < 97 )  || ($var > 122 && $var < 190 )  || $var === 94 || $var === 95 || $var == 96 || $var >125 ){...}

Текст после замены все равно не печатается. Разделил все символы оставшегося текста пробелами, и наконец то текст был отображен в браузере. И что теперь с пробелами бороться с помощью javascript на стороне клиента?
Мистика - сервер не "хочет" печатать текст!
В чем может быть причина? И как с ней "бороться"?

Это сообщение отредактировал(а) YahоО - 2.2.2021, 01:27
PM MAIL   Вверх
Oldshelf
Дата 2.2.2021, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 22.4.2018

Репутация: 1
Всего: 4



1. Какой размер файла?
2. В какой кодировке файл?
3. Если сделать только:
Код

$text=file_get_contents("text.txt");
file_put_contents ("test.txt", $text);

- на исходном большом файле. Появится ли "test.txt" с содержимым "text.txt"?
4. Какая версия PHP?
5. Сервер локальный или на хостинге?
6. Установлены ли в системе файрвол или антивирус? Что, если их временно отключить?
7. CMS своя или чужая? Может ли в ней быть буферизация вывода: ob_start / ob_end_flush?
PM MAIL WWW   Вверх
YahоО
Дата 2.2.2021, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 11.6.2015

Репутация: нет
Всего: 1



Размер файла 5000 строк, файл 75 кб.
Сервер на free хостинге.
Кодировка, менял я ее, пробовал и с Unicode UTF-8 no BOM(65001), и с  ANSI.
file_get_contents все же считывает весь файл, и с полученным текстом в переменной можно что делать.
Версия PHP Version 7.1.33.
Буферизация - но файл же считывается весь, сразу, потому буферизация как бы ни при чем.
Сотню первых строк (или последних) можно напечатать без проблем, и вот не понятно почему какие то сочетания символов в середине тормозят выдачу.
С пробелами текст увеличивается соответственно в два раза, и такой увеличенный текст уже можно получить в браузер.
Можно конечно решить проблему с помощью пробелов и javascript,  но тогда php в явном проигрыше по сравнению с  javascript. 
Что то тут не так )), это же простой текстовый файл!


Это сообщение отредактировал(а) YahоО - 2.2.2021, 14:48
PM MAIL   Вверх
Oldshelf
Дата 2.2.2021, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 22.4.2018

Репутация: 1
Всего: 4



Цитата(YahоО @  2.2.2021,  13:34 Найти цитируемый пост)
Буферизация - но файл же считывается весь, сразу, потому буферизация как бы ни при чем.

Имел в виду буферизацию вывода на стороне CMS, когда текст из echo перед печатью на экран может как-то изменяться. Похоже, причина не в этом.

Что, если выполнить скрипт с тем же файлом на другом хостинге? Или локальном сервере?
PM MAIL WWW   Вверх
YahоО
Дата 2.2.2021, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 11.6.2015

Репутация: нет
Всего: 1



Да, по всей видимости причина в хостере, и его каких то ограничениях.
Потому как сейчас этот, в общем не большой файл (по сравнению даже с файлами картинок), по простой прямой ссылке на него в адресной строке браузера без всякого html скачивается уже более 4 минут.
И даже переход на страницу со ссылкой на этот файл замирает наглухо.
Придется искать варианты ((
PM MAIL   Вверх
ksnk
Дата 2.2.2021, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Для фришных хостеров характерно вставлять свою рекламу в вывод. Иногда довольно тупо. Сам текст в файле не похож на html ? Обычно скрипт вставки ищет открывающий-закрывающий body или </html и что-то лепит туда.  Это случайно не этот случай ?




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
YahоО
Дата 2.2.2021, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 11.6.2015

Репутация: нет
Всего: 1



Делал и похожим на html, вставлял текст в body, и просто файлом .txt по отдельной ссылке. Одинаково.
Поскольку разработка в общем то завершена, а это было тестирование с заполнением пробным контентом, то надо искать платное нормальное место для сайта, и станет все на свои места.

---
Нашел! Мгновенный показ всего текста! У другого хостера! И без фокусов (пока).


Это сообщение отредактировал(а) YahоО - 2.2.2021, 22:54
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1183 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.