ThinkSSL🔒 一键申购 5分钟快速签发 30天无理由退款 购买更放心 广告
## 数据库函数 由于数据库操作接口的不统一,所以数据库函数调用的方法上有一点差别。 数据库函数和存储过程调用方法基本一致。 > 后续会为YurunPHP引入PDO方式的数据库操作。 格式: ~~~ execFunction([数据库函数名][,[参数][,[参数类型]]]) ~~~ | 名称 | 描述 | | -- | -- | | 数据库函数名 | 要执行的数据库函数名 | | 参数 | 传递给数据库函数的参数,一维数组形式 | | 参数类型 | 可选值查看下表,留空不填则会从配置文件中读取。如果传参和配置中都为空,则查询时不是使用预处理 | | 字符 | 描述 | | -- | -- | | i | 整数类型 | | d | 浮点类型 | | s | 字符串类型 | | b | 二进制类型 | ### MySQL API MYSQL API不支持INOUT和OUT参数。 代码: ~~~ // 调用无参数的数据库函数 $this->db->execFunction('数据库函数名'); // 调用有参数的数据库函数 $this->db->execFunction('数据库函数名',array('宇润','无锡')); ~~~ ### MySQLi MYSQLi支持INOUT和OUT参数。 用法: ~~~ $this->db->execFunction([数据库函数名][,参数]); ~~~ 代码: ~~~ // 调用无参数的数据库函数 $this->db->execFunction('数据库函数名'); // 调用有参数的数据库函数 $this->db->execFunction('数据库函数名',array('宇润','无锡')); // 调用有参数的数据库函数,并且获得OUT参数返回值。数据库函数的三个参数类型分别是字符串、字符串和整数型,所以根据上表是ssi $this->db->execFunction('数据库函数名',array('宇润','无锡',&$age),'ssi'); ~~~ ### 配置文件中配置数据库函数的参数: ~~~ <?php return array( 'DbFunc' => array( '数据库函数名' => array( 'params' => 'ssi' ), '数据库函数名2' => array( 'params' => 'iiii' ), ) ); ~~~ 直接执行: ~~~ // 调用有参数的数据库函数,并且获得OUT参数返回值。 $this->db->execFunction('数据库函数名',array('宇润','无锡',&$age)); ~~~