Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

моя не понимать чужих мыслей


chukcha
 Поделиться

Рекомендованные сообщения

class ocStore {
	private $config;
	private $db;
	private $data = array();
	
		public function validate($string="", $filter="2") {
			$filters["1"] = FILTER_VALIDATE_INT;
			$filters["2"] = FILTER_VALIDATE_EMAIL;
			$filters["3"] = FILTER_VALIDATE_URL;
			$filters["0"] = FILTER_VALIDATE_BOOLEAN;

			$res = filter_var($string, $filters["".$filter.""]);

			return($res);
		}
}

Может кто объяснить необходимостью в $filters[]

 

Чего проще и прозрачней

public function validate($string="", $filter="FILTER_VALIDATE_EMAIL") {
//http://php.net/manual/ru/filter.filters.validate.php
			$res = filter_var($string, $filter);

			return($res);
		}

Если уж человек по какой-то причине долез до этого кода, то ссылка на первоисточник достаточно

в крайнем случае - в комментах перечислить популярные

//FILTER_VALIDATE_EMAIL;
//FILTER_VALIDATE_INT;
//FILTER_VALIDATE_FLOAT
//FILTER_VALIDATE_BOOLEAN;
//FILTER_VALIDATE_URL;
//FILTER_VALIDATE_IP

public function validate($string="", $filter="FILTER_VALIDATE_EMAIL") {
//http://php.net/manual/ru/filter.filters.validate.php
//FILTER_VALIDATE_EMAIL;
//FILTER_VALIDATE_INT;
//FILTER_VALIDATE_FLOAT
//FILTER_VALIDATE_BOOLEAN;
//FILTER_VALIDATE_URL;
//FILTER_VALIDATE_IP
		$res = filter_var($string, $filter);
		return($res);
}
Ссылка на комментарий
Поделиться на других сайтах

Это идет от "истории" разработки.

Подозреваю вначале у разработчика была одна архитектура, потом он её поменял, и кое где остался старый код (обычно при изменении архитектуры "дырки" в коде меняются быстро (чтобы работало), а потом забываются))...

Такое часто бывает.

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...

это было для замены маразматических проверок корректности email регулярками, которые то тут, то там, при использовании нестандартных/коротких почтовых сервисов (типа i.ua) / адресов, приходилось редактировать.

цифры вместо строковых значений используются для сокращения кода + не надо запоминать конструкции "FILTER_VALIDATE_*" (впрочем, кроме проверки email, там особо ничего не планировалось в ближ.время; оставили остальное для будущего).

Ссылка на комментарий
Поделиться на других сайтах

Необходимость понятна.

 

не надо запоминать конструкции "FILTER_VALIDATE_*"

 

Ага, проще написать ничего не значащее 2 для email

Я бы понял

validate($str, 'email')

validate($str, 'ip')

Ссылка на комментарий
Поделиться на других сайтах

>> Я бы понял...

возможно ты прав.

но в тот момент был такой код и его взяли "as is".

Ссылка на комментарий
Поделиться на других сайтах

>> Я бы понял...

возможно ты прав.

но в тот момент был такой код и его взяли "as is".

 

Иногда для "тестирования" разработчик вставляет код "проверки" (ну влом заводить новые функции скроллить за "тело" где находиться код и т.п.) прямо в теле без вызова функций (работает то) и потом... просто забывает.

Главное работает :)

Такой код можно найти у всех.

Ссылка на комментарий
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.