#php #function
#php #функция
Вопрос:
Я пытаюсь объединить 3-4 функции внутри одной функции и вызвать это внутри другой функции. например
public function user($user)
{ if($user==''){ $this->logerror('not valid'); //this stores error in the db
return false; }
}
У меня есть еще одна для электронной почты, подобной этой
public function email($email)
{ if($email==''){ $this->logerror('not valid'); //this stores error in the db
return false; }
}
Итак, теперь я хочу написать функцию под названием «validate», а затем поместить две вышеуказанные функции. затем я буду называть это «validate» в других местах, когда я захочу подтвердить пользователя и электронную почту. Я не понимаю, какими будут аргументы для функции «validate», когда я захочу ее использовать. Пожалуйста, дайте мне знать, если я чего-то не понимаю.
Комментарии:
1. Не уверен, чего вы хотите, но если вы хотите иметь функцию, которая хочет проверять оба этих параметра, два вызова должны сделать свое дело.
2. да, непонятно, вы имеете в виду a:
function one4all($what, $toDo){...}
если это так, просто используйтеswitch($toDo)
3. Возможно, вы захотите переименовать свои функции и изменить то, что вы возвращаете в них. Я не думаю, что большинство людей ожидали бы, что функция с именем
user
вернетfalse
илиnull
.
Ответ №1:
Это то, чего вы хотите?
public function validate($user, $email)
{ if($user=='' and $email != ''){ $this->logerror('not valid'); //this stores error in the db
return false; }
}
Комментарии:
1. Я думаю, что что-то вроде этого будет полезно. будем работать в этом направлении. спасибо всем.
Ответ №2:
Это то, что вы пытаетесь сделать?
<?php
public function checkData($data)
{
if($data == '') {
$this->logerror('not valid'); //this stores error in the db
return false;
}
}
checkData($email);
checkData($user);
?>
Ответ №3:
public function user($user){
if($user==''){
$this->logerror('name not valid'); //this stores error in the db
return false;
}else{
return true;
}
public function email($email){
if($email==''){
$this->logerror('email not valid'); //this stores error in the db
return false;
}else{
return true;
}
}
public function validate($name, $email){
if(name($name) amp;amp; email($email){
// Then the form is valid
}else{
// the form is not valid
}
}
Функция validate проверит как имя, так и переданный параметр email