Пример действительного адреса электронной почты:
«это действительный адрес» @ example.com
- Настройка php-почты в xampp
- Скрипт для разбора электронных писем для вложений
- Функция PHP mail (), отправляющая дубликат (пустой) адрес электронной почты
- PHP mail () BCC - отображает только адрес получателей в заголовке To:
- Что мне нужно для совместимого заголовка электронной почты
- запланировать электронное письмо в php
PHP-код:
<?php header('Content-Type: text/plain'); $email = '"this is a valid address"@example.com'; $checked = filter_var($email, FILTER_VALIDATE_EMAIL); var_dump($email, $checked);
Вывод на одном сервере: (PHP Version 5.2.6):
string (37) "" это действительный адрес "@ example.com"
string (37) "" это действительный адрес "@ example.com"
phpinfo()
:
Input Validation and Filtering enabled Revision $Revision: 1.52.2.42 $ Directive Local Value Master Value filter.default unsafe_raw unsafe_raw filter.default_flags no value no value
Вывод на другом сервере (версия PHP 5.3.3):
string (37) "" это действительный адрес "@ example.com"
BOOL (ложь)
phpinfo()
:
Input Validation and Filtering enabled Revision $Revision: 298196 $ Directive Local Value Master Value filter.default unsafe_raw unsafe_raw filter.default_flags no value no value
Я не вижу ничего в документации, чтобы предположить, что это изменилось, поэтому, возможно, это другой параметр конфигурации.
Как вы можете видеть на http://3v4l.org/vKONS использование фильтра FILTER_VALIDATE_EMAIL
это непротиворечиво!
Выводы http://3v4l.org/vKONS для PHP 5.2.0, 5.2.14 – 5.2.17, 5.3.3 – 5.3.18, 5.4.0 – 5.4.8
string(37) ""this is a valid address"@example.com" bool(false)
и для 5.2.1 – 5.2.13, 5.3.0 – 5.3.2
string(37) ""this is a valid address"@example.com" string(37) ""this is a valid address"@example.com"
Замечательно, что он работал на 5.2.0, но не 5.2.1-5.2.13, а затем снова на 5.2.14 !!!
Btw 3v4l.org – отличный ресурс для проверки таких изменений поведения во всех доступных версиях PHP.
Существует несколько ошибок, включая термин FILTER_VALIDATE_EMAIL, но ни один из них не соответствует вашей ошибке. Вы можете добавить его в PHP bugtracker …