如果某个类需要连接数据库获取数据 这个数据库连接 怎么处理?是在类里实例化一个mysqli连接来使用?还是将需要连接数据库的部分放在类外面 查询数据后传递给类调用?刚刚摸索类 咔咔.

解决方案 »

  1.   

    这个问题没有标准答案,完全取决于类的用途。
    有时db操作封装在类内部,有时单独封装再给类调用,
    有时类不做任何db操作,靠类的使用者feed/fetch数据,
    没有好坏,只有合适不合适,看具体情况。
      

  2.   

    1、可在类中实例化数据库对象,通常在构造函数中完成
    传统的面向对象(策略模式)编程方式2、单独实例化数据库类,将结果传递给工作类
    以流程为主线(工厂模式)的编程方式3、类继承于数据库类
    大多 MVC 结构中使用该方式,Model 只提供数据,展示交由 View 完成
      

  3.   

    谢谢上面两位,刚买了本 《深入PHP:面向对象、模式与实践:第3版》看看有没有惊喜
      

  4.   

    在类里连接数据库最简单的做法就是把连接参数作为这个类中构造函数的参数传递进去,然后可以选择在构造函数里就直接写$this->link=mysql_connect(...)or dir(mysql_error());