企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[Xunsearch PHP-SDK](http://www.xunsearch.com) v1.4.8 API 参考文档 # XSDatabaseMySQLI [All Packages](#)| [方法(函数)](#) | 包 | [XS.util.db](#) | |-----|-----| | 继承关系 | class XSDatabaseMySQLI »[XSDatabase](#) | | 版本 | 1.0.0 | | 源代码 | [sdk/php/util/XSDataSource.class.php](https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php) | 面向对象的 MySQLI 扩展 ### Public 方法 [隐去继承来的方法](#) | 名称 | 描述 | 定义于 | |-----|-----|-----| | [close()](#) | 关闭数据库连接 | XSDatabaseMySQLI | | [connect()](#) | 连接数据库 | XSDatabaseMySQLI | | [query()](#) | 执行 SQL 语句查询 | XSDatabaseMySQLI | | [query1()](#) | 查询数据库首行 | [XSDatabase](#) | | [setUtf8()](#) | 将输出字符集设置为 UTF-8 | XSDatabaseMySQLI | ### 方法明细 close()方法 <table class="summaryTable"><tr><td colspan="3"><div class="signature2">public void <b>close</b>()</div></td></tr></table> **源码:**[sdk/php/util/XSDataSource.class.php#L641](https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L641) (**[显示](#)**) `public function close() {     if ($this->obj) {         $this->obj->close();         $this->obj = null;     } }` 关闭数据库连接 connect()方法 <table class="summaryTable"><tr><td colspan="3"><div class="signature2">public void <b>connect</b>(array $param)</div></td></tr><tr><td class="paramNameCol">$param</td> <td class="paramTypeCol">array</td> <td class="paramDescCol">连接参数, 包含: user,pass,host,table,dbname ...</td></tr></table> **源码:**[sdk/php/util/XSDataSource.class.php#L621](https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L621) (**[显示](#)**) `public function connect($param) {     $host = isset($param['host']) ? $param['host'] : ini_get('mysqli.default_host');     $user = isset($param['user']) ? $param['user'] : ini_get('mysqli.default_user');     $pass = isset($param['pass']) ? $param['pass'] : ini_get('mysqli.default_pw');     $port = isset($param['port']) ? $param['port'] : ini_get('mysqli.default_port');     $this->obj = new mysqli($host, $user, $pass, '', $port);     if ($this->obj->connect_error) {         throw new XSException("Can not connect to mysql server: '$user@$host'");     }     if (!$this->obj->select_db($param['dbname'])) {         $this->close();         throw new XSException("Can not switch to database name: '{$param['dbname']}'");     }     $this->setUtf8(); }` 连接数据库 query()方法 <table class="summaryTable"><tr><td colspan="3"><div class="signature2">public mixed <b>query</b>(string $sql)</div></td></tr><tr><td class="paramNameCol">$sql</td> <td class="paramTypeCol">string</td> <td class="paramDescCol">要执行的 SQL 语句</td></tr><tr><td class="paramNameCol">{return}</td> <td class="paramTypeCol">mixed</td> <td class="paramDescCol"></td></tr></table> **源码:**[sdk/php/util/XSDataSource.class.php#L654](https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L654) (**[显示](#)**) `public function query($sql) {     //echo "[DEBUG] SQL: $sql\n";     $res = $this->obj->query($sql);     if ($res === false) {         throw new XSException('MySQL ERROR(#' . $this->obj->error . '): ' . $this->obj->errno);     }     if (!is_object($res)) {         $ret = $res;     } else {         $ret = array();         while ($tmp = $res->fetch_assoc()) {             $ret[] = $tmp;         }         $res->free();     }     return $ret; }` 执行 SQL 语句查询 setUtf8()方法 <table class="summaryTable"><tr><td colspan="3"><div class="signature2">public bool <b>setUtf8</b>()</div></td></tr><tr><td class="paramNameCol">{return}</td> <td class="paramTypeCol">bool</td> <td class="paramDescCol">始终返回 true</td></tr></table> **源码:**[sdk/php/util/XSDataSource.class.php#L677](https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L677) (**[显示](#)**) `public function setUtf8() {     $this->obj->set_charset('utf8');     return true; }` 将输出字符集设置为 UTF-8 Copyright © 2008-2011 by [杭州云圣网络科技有限公司](http://www.xunsearch.com) All Rights Reserved.