alex_shevch
@alex_shevch
Frontend Developer

PHP Почему не равны две строки?

Всем привет!
var_dump($postLink);
var_dump($currLink);

string(47) "//pecoltd/services/marine-geophysics/" 
string(41) "//pecoltd/services/marine-geophysics/"


Уже оборачивал и в trim, и в stripslashes, и в strtolower, и в htmlspecialchars_decode и во всё сразу. Разницы никакой.
Подскажите пожалуйста
  • Вопрос задан
  • 434 просмотра
Решения вопроса 3
gzhegow
@gzhegow
aka "ОбнимиБизнесмена"
очень вероятно что одна строка написана в блокноте с выбранным UTF8-BOM, а вторая написана на сервере или на чьём-то ноутбуке где было выбрано Windows-1251, а потом просто скопировано или вставлено в базу как было

ну и как ты сам нашел в комментах - __debugInfo магический метод может менять вывод var_dump.
Ответ написан
Комментировать
@3gsxarakiri
Пытаюсь разобраться в этом гемморое
Разница в длине в 6, вполне возможно, что в первой строке, та что длинее, 3 символа написаны на русской раскладке.
Ответ написан
Комментировать
FanatPHP
@FanatPHP
Чебуратор тега РНР
Вместо var_dump используй в таких случаях urlencode. Все сразу станет видно. И Бом, и русские буквы в утф и невидимые символы.

И не придется тыкать пальцем в небо, как это обычно принято у похапешников на тостере
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ErrorMan
Я столкнулся с подобной проблемой, проблема была в непечатаемых символах, а решение: https://blog.sergey-lysenko.ru/2012/09/php-remove-...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы