登录  /  注册
博主信息
博文 33
粉丝 1
评论 0
访问量 20989
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
数据库查询构造器
冰雪琉璃
原创
564人浏览过

数据库查询构造器

  1. class Query()
  2. {
  3. protected $db;//PDO连接对象
  4. protected $table;
  5. protected $field;
  6. protected $where;
  7. protected $Limit;
  8. protected $select;
  9. protected $toArray;
  10. //连接数据库
  11. private function connect($dsn,$username,$password)
  12. {
  13. $this->db=new PDO($dsn,$username,$password);
  14. }
  15. function __construct($dsn,$username,$password)
  16. {
  17. $this->connect($dsn,$username,$password);
  18. }
  19. //数据表方法$table
  20. public function table($table)
  21. {
  22. $this->table=$table;
  23. return $this;
  24. }
  25. //文件名方法$field
  26. public function field($field)
  27. {
  28. $this->field=$field;
  29. return $this;
  30. }
  31. //Limit方法$Limit
  32. public function Limit($Limit)
  33. {
  34. $this->Limit=$Limit;
  35. return $this;
  36. }
  37. //$where方法
  38. public function where($where)
  39. {
  40. $this->where=$where;
  41. return $this;
  42. }
  43. //$select方法
  44. public function select($select)
  45. {
  46. $this->select=$select;
  47. return $this;
  48. }
  49. public function getSql()
  50. {
  51. return printf('SELECT %s FROM $s LIMIT %d',$this->table,$this->field,$this->limit);
  52. }
  53. //执行查询
  54. public function select()
  55. {
  56. return $this->db->query($this->getSql())->fetchAll(PDO::FETCH_ASSOC);
  57. }
  58. }
  59. //工作类
  60. class Db
  61. {
  62. static function __callStatic($method,$args){
  63. $dsn='mysql:host=localhost;dbname=news';
  64. $username='root';
  65. $password='123456tyi';
  66. $query=new Query( $dsn, $username, $password);
  67. //直接委托给query中的具体方法来完成
  68. return call_user_func([$query,$method],...args);
  69. }
  70. }
  71. $res=Db::table('userid')->field('uid,uname')->Limit(1)->select();
  72. echo '<pre>';
  73. print_r($res);
批改老师:灭绝师太灭绝师太

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学