douxiongye5779 2017-03-07 11:28
浏览 84
已采纳

PHP - Mysqli连接使用面向对象的方式打开和关闭 - MySQLi

I am trying to find a way which does the following

  • Object Oriented way
  • Closing the connection efficiently
  • closing a connection anyways

    <?php 
    
     define("HOST", "localhost");
     define("USER", "username");
     define("PASS", "password");
     define("DBNM", "database");
    
     class ConnectionTest extends mysqli {
    
        private $link;
    
        function __construct() {
            $this->link = new mysqli(HOST, USER, PASS, DBNM);
        }
    
        function getLink(){
            return $this->link;
        }
    
        function __destruct() {
            mysqli_close($this->link)
        }
     }
    ?>
    

To try to get to my objective

  1. Object Oriented way - Used a class
  2. closing connection efficiently - defined a function to close the connection
  3. closing a connection anyways - set the same function to be destructor of that class

As I am new to PHP, I would like to know:

  • Is this technique proper?
  • What complications could occur? or what are the disadvantages to this technique?
  • Is there any improvement needed in this code?
  • 写回答

1条回答 默认 最新

  • downloadTemp2014 2017-03-07 11:57
    关注

    Frankly, this class of yours makes very little sense as it effectively duplicates mysqli. All the things you want to achieve, are already implemented in mysqli:

    1. Object Oriented way - Mysqli is a class already.
    2. There is a function in mysqli to close a connection as well
    3. Which is closing a connection efficiently.

    So I fail to see how is your class any better than mysqli.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器