栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

PHP构造函数返回NULL

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PHP构造函数返回NULL

假设您使用的是PHP 5,则可以在构造函数中引发异常:

class NotFoundException extends Exception {}class User {    public function __construct($id) {        if (!$this->loadById($id)) {  throw new NotFoundException();        }    }}$this->LoggedUser = NULL;if ($_SESSION['verbiste_user'] != false) {    try {        $this->LoggedUser = new User($_SESSION['verbiste_user']);    } catch (NotFoundException $e) {}}

为了清楚起见,您可以将其包装在静态工厂方法中:

class User {    public static function load($id) {        try { return new User($id);        } catch (NotFoundException $unfe) { return null;        }    }    // class body here...}$this->LoggedUser = NULL;if ($_SESSION['verbiste_user'] != false)    $this->LoggedUser = User::load($_SESSION['verbiste_user']);

顺便说一句,某些版本的PHP 4允许您在构造函数中将$ this设置为NULL,但我认为这从未得到正式批准,并且最终删除了“功能”。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/435341.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号