2010-02-16 2 views
4

У меня есть этот скрипт, который извлекает некоторые данные из mysql, а затем использует эхо для вывода его. Но, поскольку страница выросла и получила больше времени, у меня появилось это странное поведение, когда она разрезает конец на 65535 chrs (при использовании strlen для проверки)Существуют ли ограничения на длину эха PHP?

Данные сохраняются в MySQL за пределами 65535 chrs показывается при использовании эха.
EDIT:Извините, похоже, что не все данные были сохранены, это был мой редактор WYSIWYG, который сделал его похожим на все, но все было сохранено. (Он автоматически закрывает закрытые теги, чтобы все выглядело нормально, когда я снова открываю содержимое.)

Почему это происходит?

Все, что у меня есть;

$content= $row['content']; 
echo $content; 

ответ

7

Вы уверены, что это проблема с PHP? Поле MySQL TEXT имеет максимальный размер 65535 символов. Убедитесь, что текст действительно находится в вашей базе данных.

+0

Oh! там у нас есть наша проблема. Дело в том, что я использую WYSIWYG-редактор и таблицы ... ох, неважно ... В итоге он выглядел ОК в редакторе, но теперь я вижу, текст не был сохранен. Могу ли я использовать что-то еще, чем TEXT в MySQL, чтобы сохранить текстовые данные размером более 65 тыс.? – jamietelin

+2

'MEDIUMTEXT' или' LONGTEXT'? –

+1

Вы можете сохранить его как средний текст, который поднимает его до 2^24 или longtext, который поднимает его до 2^32 байта. – thetaiko

-1

Конечно, звучит как предел длины. Вы всегда можете попробовать что-то вроде этого:

$content = str_split($row['content'], 65536); 
foreach ($content as $part) { 
    echo $part; 
} 
Смежные вопросы