Строка не пустая, но не отображается при использовании var_dump - PullRequest
2 голосов
/ 28 сентября 2011

В настоящее время я пытаюсь вернуть общедоступный ресурс XML, хотя, когда я использую var_dump($resource), он возвращает string(4390) " ".

Я использую CURL для извлечения ресурса, и он успешно возвращает другие ресурсы.Там явно что-то есть (как вы можете видеть, там 4390 символов!), Но оно не возвращается успешно.

Я попытался обернуть его в utf8_encode, хотя это не имеет значения.

Я также пытался вернуть его, используя теги print_r и <pre>, хотя это тоже ничего не возвращало.

Любая помощь здесь была бы великолепна!

Ответы [ 3 ]

8 голосов
/ 28 сентября 2011

Чтобы отобразить неотображаемые символы из строк, не используйте var_dump, а распечатайте шестнадцатеричный дамп строки , например

echo bin2hex($resource);

, используя bin2hex Документы , но приведенная выше ссылка предлагает больше альтернатив.Возьмите то, что лучше всего подходит для отладки.

Редактировать: Если вы действительно выводите элементы HTML или XML, используйте htmlspecialchars Документы :

echo htmlspecialchars($result);
0 голосов
/ 28 сентября 2011

Или вы можете использовать Kint вместо var_dump для отображения результатов отладки. Он покажет наибольшую информацию о сбрасываемых переменных в наиболее удобочитаемом виде. Излишне говорить, что он отображает html без особых усилий.

Скриншот:

Kint screenshot

0 голосов
/ 28 сентября 2011

Какой тип текста в xml?Если есть только HTML-теги, попробуйте просмотреть исходный код интернет-страницы.Возможно, они не будут отображаться, потому что ваш браузер интерпретирует HTML и не показывает теги

...