- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброго времени суток!
Ситуация такая:
Имеется строка: "привет".
Имеется всем известная php функция urldecode()/urlencode().
Если в качестве параметра функции urldecode() передается строка, которая заранее обработана функцией urlencode() (в виде:%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82), то в результате будет (очевидно) исходная строка("привет").
Однако если на вход подать строку которая до этого не была обработана urlencode() ("привет"), то в результате получается кракозябра.
Так вот, если дабы избежать получения кракозябр, имеется ли способ проверять строку (в каком виде она находится, в исходном или уже обработанная urlencode() ) перед передачей её на обработку функции urlencode() ?
более правильнее будет просто пересмотреть алгоритм, и на urldecode отдавать только те данные, которые идут в соотв формате, но в целом, можно как-то так:
здесь, $input = $raw - для ервого теста, и $input = $enc; для второго.
Но это притянутое за уши решение, более правильнее - пересмотреть свой алгоритм, если это возможно разумеется.
Как-то так :)
if (preg_match('/^(%[A-Fa-f0-9]{2})+$/',$string)) {
$string=urldecode($string);
}
Однако если на вход подать строку которая до этого не была обработана urlencode() ("привет"), то в результате получается кракозябра.
Можно пример?
urldecode() - обычный "беспроцентный" текст, и так не должна менять. Скорее дело в кодировках.