繁体   English   中英

PDO类在PHP中扩展和获取类

[英]PDO class extends and fetch class in PHP

抱歉,这个问题太糟糕了,无法给出正确的答案,所以现在我编辑了:


该手册说:

PDO :: FETCH_CLASS:返回指定类的实例,将每一行的列映射到该类中的命名属性。

我的疑问是,如果该类从另一个具有更多属性的类扩展,那么该属性会被实例化吗?

抱歉,如果我不清楚这个问题,我不会说英语。 谢谢你们。

一个好问题。

对于PDO,类层次结构实际上并不重要。 PDO所做的只是从数据库中获取列并将其分配给类属性, 而不管类定义或继承如何。

  • 如果属性不存在,PDO将尝试创建它。
  • 如果某个属性没有要映射的列,则PDO将不理会它。

就如此容易。 因此,它应该创建您从数据库中选择的任何内容。

从您之前在问题中遇到的特定代码开始-您必须对其进行调试。 看,看是否获取了任何东西,您正在使用任何方法printNickName()。 但是此方法或任何中间过程都可能出错。 让我建议您仅创建空类,在其中获取数据,然后直接检查属性。

在确保正确设置了所有属性之后,可以尝试使用自定义类定义。 为了调试返回的数据,我建议使用

$stmt->execute();
var_dump($stmt->fetchAll(PDO::FETCH_CLASS, 'User'));

您可以从我的文章“ 使用PDO获取对象”中了解PDO类处理的其他详细信息。

暂无
暂无

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

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