繁体   English   中英

使用 zend email 验证时出错::PHP 致命错误:未捕获错误:Class 'Zend\Validator\AbstractValidator'

[英]getting error while using zend email validation:: PHP Fatal error: Uncaught Error: Class 'Zend\Validator\AbstractValidator'

我正在尝试在注册时验证 email 以确保没有垃圾邮件。 为此,我了解到 Zend FrameWork 对此很有用。

所以要尝试我遵循的以下步骤:

  1. 我从https://framework.zend.com/downloads/archives下载了ZendFramework- 2.4.13.zip
  2. 我在文件的同一路径中提取并将文件夹重命名为ZendFramework
  3. 然后我按照他们的教程中的指导尝试以下代码。
    require_once("ZendFramework/library/Zend/Validator/EmailAddress.php");
    
    $validator = new Zend\Validator\EmailAddress();
    $email = "mohibxxx@gmail.com";
    if ($validator->isValid($email)) {
        echo "Valid \n";
    } else {
        // email is invalid; print the reasons
        foreach ($validator->getMessages() as $message) {
            echo "$message\n";
        }
    }

但是当我运行代码时,我得到了以下错误,我什至检查了 zend 源代码 class,但看起来很正常。

PHP Fatal error: Uncaught Error: Class 'Zend\Validator\AbstractValidator' not found in /home/account_name/public_html/test_mail/ZendFramework/library/Zend/Validator/EmailAddress.php:12

堆栈跟踪:#0 /home/account_name/public_html/test_mail/email-test.php(2): require_once()

#1 {main} 在第 12 行抛出 /home/account_name/public_html/test_mail/ZendFramework/library/Zend/Validator/EmailAddress.php

需要专家帮助,我做错了什么,我只需要通过扩展 class 来调用它吗?

更新我也尝试过,但仍然是同样的错误

ini_set('include_path', ini_get('include_path') . PATH_SEPARATOR . '/home/account_name/public_html/test_mail/ZendFramework/library/');
require_once("Zend/Validator/EmailAddress.php");

我强烈建议使用 Composer 来处理您的依赖关系,并使用它的自动加载器来处理加载类。 这样生活就简单多了。

此外,Zend Framework 已被 Laminas 取代。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM