2014-12-05 95 views
0

我一直在尝试使用我的验证代码做一个php pear验证,但是我收到的都是严格的标准错误 - 有什么问题,我该如何解决它?非静态方法STemplate :: assign()不应该被静态调用

严格的标准:非静态方法Validate ::电子邮件()不应该被称为静态在C:\ WAMP \ WWW \ chap5 \ EmailValidation.php第5倍 严格的标准:非静态方法Validate ::电子邮件()不应该用C静态调用:\ WAMP \ WWW \ chap5 \ EmailValidation.php上线11

电子邮件Validation.php

<?php require_once "Validate.php"; 

$email = '"Doe, John" <[email protected]>'; 
if(Validate::email($email, array('use_rfc822'=> true))){ 
    echo 'Valid!'; 
} 
else { 
    echo $email . " failed."; 
} 

if (Validate::email($email, array('check_domain' => true))){ 
    echo $email . ' is valid and domain exists'; 
} 

?> 

回答

0

然后运作emailValidate类静态定义。所以你不应该静态调用它。创建该类的对象,然后调用该函数。像

$validator = new Validation(); 
$validator->email($email, array('use_rfc822'=> true)); // instead of Validate::email 

如果您不能创建该类的对象,那么在该类中声明该函数为静态。 像

public static function email(Arg_same_as_it_is){ 
    ... 
    ... 
} 
0

它告诉你,而不是将它表示为

$validate = new Validate(); 
$validate->email() 
// ... 
相关问题