10bet网址
MySQL PHP API
下载本手册
PDF(美国Ltr)- 2.4 mb
PDF (A4)- 2.4 mb


MySQL PHP API/.../ 双重过程和面向对象的接口

3.2.1双重程序化和面向对象的接口

PHP文档组版权所有。10bet官方网站

mysqli扩展具有双接口。它支持过程和面向对象的编程范式。

从旧mysql扩展迁移过来的用户可能更喜欢过程界面。过程界面类似于旧的mysql扩展。在许多情况下,函数名的区别仅仅在于前缀。一些mysqli函数将连接句柄作为第一个参数,而旧mysql接口中的匹配函数将其作为可选的最后一个参数。

示例3.1从旧的mysql扩展轻松迁移

<?PHP $mysqli = mysqli_connect("example.com", "用户","密码","数据库");$result = mysqli_query($mysqli, "SELECT 'Please do not use the deprecated mysql extension for new development. 'AS _msg FROM DUAL");$row = mysqli_fetch_assoc($result);echo $ row [' _msg '];$mysql = mysql_connect("example.com", "user", "password");mysql_select_db(“测试”);$result = mysql_query("SELECT '使用mysqli扩展名代替。"AS _msg FROM DUAL", $mysql); $row = mysql_fetch_assoc($result); echo $row['_msg'];

上面的例子将输出:

请不要使用已弃用的mysql扩展进行新的开发。请使用mysqli扩展。


面向对象的接口

除了经典的过程接口,用户还可以选择使用面向对象的接口。文档使用10bet官方网站面向对象的接口组织。面向对象的接口显示了按用途分组的函数,使它更容易开始。参考部分给出了这两种语法变体的示例。

这两个接口之间没有明显的性能差异。用户可以根据个人喜好进行选择。

例3.2面向对象和过程的接口

<?PHP $mysqli = mysqli_connect("example.com", "用户","密码","数据库");$result = mysqli_query($mysqli, "SELECT 'A world full of ' AS _msg FROM DUAL");$row = mysqli_fetch_assoc($result);echo $ row [' _msg '];$mysqli = new mysqli("example.com", "user", "password", "database");$result = $mysqli->query("SELECT 'choices to please everyone .'AS _msg FROM DUAL");$row = $result->fetch_assoc();echo $ row [' _msg '];

上面的例子将输出:

这个世界充满了取悦每个人的选择。


面向对象的接口用于快速入门,因为参考部分是这样组织的。

混合风格

它可以在任何时候在风格之间切换。出于代码清晰性和编码风格的原因,不建议混合使用这两种风格。

例3.3糟糕的编码风格

<?PHP $mysqli = new mysqli("example.com", "用户","密码","数据库");$result = mysqli_query($mysqli, "SELECT '可能的但糟糕的样式。'AS _msg FROM DUAL");如果(行=结果美元- > fetch_assoc ()) {echo $行(“_msg”);}

上面的例子将输出:

可能,但糟糕的风格。


另请参阅

mysqli: __construct
mysqli:查询
mysqli_result: fetch_assoc
美元mysqli:: connect_errno
美元mysqli:: connect_error
美元mysqli:: errno
美元mysqli:错误
MySQLi扩展函数摘要