首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从动态数据库调用创建对象

从动态数据库调用创建对象
EN

Stack Overflow用户
提问于 2009-06-20 04:31:46
回答 1查看 211关注 0票数 0

我正在尝试创建一个类,它从数据库查询(作为数组传递给我的类)中获取一些未指定的数据,并将其转换为一个PHP对象,其中的属性是从传递给它的数据动态创建的。

如下所示:

代码语言:javascript
复制
    class myLibrary_Item extends myLibrary
    {
            private function __construct($vars)
            {
                    foreach($vars as $var => $val)
                    {
                            $this->$var => $val;
                    }
            }

            private function __set($var, $val)
            {
                    $this->$var => $val;
            }

            private function __get($var)
            {
                    return $this->$var;
            }
    }  

$myArray = array(
    'firstName' => 'Joe',
    'lastName' => 'Carrington'
);

$myObject = new myLibrary_Item($myArray)
echo $myObject->firstName;
//Hopefully will output Joe

那么,我的问题是,这到底是一个好主意吗?我是不是错过了OOP的要点?我应该改为学习PDO吗?这似乎是一个很大的帮助,但我不想敲打出错误,如果这将在稍后咬我的臀部。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-06-20 04:33:29

我要说的是,这对PDOStatement->fetchObject来说确实是多余的。

代码语言:javascript
复制
php > $dbh = new PDO("mysql:host=localhost;dbname=test", "guest");
php > $stat = $dbh->prepare("select * from books");
php > $stat->execute();
php > while($row = $stat->fetchObject())
php > print_r($row);
stdClass Object
(
    [title] => Hitchhiker's Guide
    [author] => Douglas Adams
    [isbn] => 0345391802
    [publisher] => Del Rey
    [year] => 1995
    [summary] => Arthur Dent accidentally saves the world.
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1020942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档