iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php中的prepare怎么用
  • 160
分享到

php中的prepare怎么用

2023-06-28 23:06:09 160人浏览 泡泡鱼
摘要

这篇文章给大家介绍PHP中的prepare怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在php中“PDO::prepare”表示准备要执行的语句,并返回语句对象,其使用语法如“public PDO::prepa

这篇文章给大家介绍PHP中的prepare怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

php中“PDO::prepare”表示准备要执行的语句,并返回语句对象,其使用语法如“public PDO::prepare(string $statement, array $driver_options = array())”。

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php prepare的用法是什么?

PDO::prepare

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PHP 8,PECL pdo >= 0.1.0)

PDO::prepare — 准备要执行的语句,并返回语句对象

说明

public PDO::prepare(string $statement, array $driver_options = array()): PDOStatement

为 PDOStatement::execute() 方法准备待执行的 sql 语句。 语句模板可以包含零个或多个参数占位标记,格式是命名(:name)或问号(?)的形式,当它执行时将用真实数据取代。 在同一个语句模板里,命名形式和问号形式不能同时使用;只能选择其中一种参数形式。 请用参数形式绑定用户输入的数据,不要直接字符串拼接到查询里。

调用 PDOStatement::execute() 时,每一个值的参数占位标记,名称必须唯一。 除非启用模拟(emulation)模式,同一个语句里无法使用重名的参数。

注意:

参数占位符仅能字面上展示完整的数据。不能是字面的一部分,不能是关键词,不能是标识符,不能是其他任意的范围。 举例说明:不能把多个值绑到单个参数里,然后在 SQL 语句里用 IN() 查询。

如果用不同参数,通过 PDO::prepare() 和 PDOStatement::execute() 多次调用同一个 SQL 语句,将提升应用的性能 —— 驱动可以让客户端/服务器缓存查询和元信息。 同时,调用 PDO::prepare() 和 PDOStatement::execute() 还能阻止 SQL 注入攻击,不需要给参数手动加引号与转义。

如果内置驱动不支持参数,PDO 将模拟出参数的功能;如果驱动仅仅支持其中一种风格(命名参数和问号参数两种),也会自动重写到另外一种风格。

注意: The parser used for emulated prepared statements and for rewriting named or question mark style parameters supports the non standard backslash escapes for single- and double quotes. That means that terminating quotes immediately preceeded by a backslash are not recognized as such, which may result in wrong detection of parameters causing the prepared statement to fail when it is executed. A work-around is to not use emulated prepares for such SQL queries, and to avoid rewriting of parameters by using a parameter style which is natively supported by the driver.

参数

statement

必须是对目标数据库服务器有效的 SQL 语句模板。

driver_options

数组包含一个或多个 key=>value 键值对,为返回的 PDOStatement 对象设置属性。 常见用法是:设置 PDO::ATTR_CURSOR 为 PDO::CURSOR_SCROLL,将得到可滚动的光标。 某些驱动有驱动级的选项,在 prepare 时就设置。

返回值

如果数据库服务器完成准备了语句, PDO::prepare() 返回 PDOStatement 对象。 如果数据库服务器无法准备语句, PDO::prepare() 返回 false 或抛出 PDOException (取决于 错误处理器)。

注意:

模拟模式下的 prepare 语句不会和数据库服务器交互,所以 PDO::prepare() 不会检查语句。

范例

示例 #1 命名参数形式的 SQL 语句模板

<?php$sql = 'SELECT name, colour, calories    FROM fruit    WHERE calories < :calories AND colour = :colour';$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));$sth->execute(array(':calories' => 150, ':colour' => 'red'));$red = $sth->fetchAll();$sth->execute(array(':calories' => 175, ':colour' => 'yellow'));$yellow = $sth->fetchAll();?>

示例 #2 问号形式的 SQL 语句模板

<?php$sth = $dbh->prepare('SELECT name, colour, calories    FROM fruit    WHERE calories < ? AND colour = ?');$sth->execute(array(150, 'red'));$red = $sth->fetchAll();$sth->execute(array(175, 'yellow'));$yellow = $sth->fetchAll();?>

PHP开发环境搭建工具有哪些

一、phpStudy,是一个新手入门最常用的开发环境。二、WampServer,WampServer也同样的也是和phpStudy一样操作简单对小白比较友好。三、XAMPP,XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包;四、MAMP,MAMP分为两种MAMP和MAMP Pro for Mac。五、宝塔面板,宝塔面板是一款服务器管理软件,支持windows和linux系统。六、UPUPW,UPUPW是目前Windows平台下最具特色的WEB服务器PHP套件。

关于php中的prepare怎么用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: php中的prepare怎么用

本文链接: https://www.lsjlt.com/news/321251.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php中的prepare怎么用
    这篇文章给大家介绍php中的prepare怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在php中“PDO::prepare”表示准备要执行的语句,并返回语句对象,其使用语法如“public PDO::prepa...
    99+
    2023-06-28
  • PHP中的PDO::prepare的示例分析
    这篇文章给大家分享的是有关PHP中的PDO::prepare的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、...
    99+
    2023-06-14
  • MySQL中prepare、execute与deallocate怎么用
    这篇文章主要介绍MySQL中prepare、execute与deallocate怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言MySQL官方将prepare、execute...
    99+
    2024-04-02
  • mysql中prepare的用法是什么
    在MySQL中,PREPARE语句用于创建一个预处理语句或准备语句。通过使用预处理语句,可以将SQL语句和参数分开,提高了SQL语句...
    99+
    2024-04-09
    mysql
  • PHP中的prepare()方法的示例分析
    这篇文章主要介绍了PHP中的prepare()方法的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php是什么语言php,一个嵌套的缩写名称,是英文超级文本预处理语言...
    99+
    2023-06-14
  • MySQL 5.7中PREPARE、EXECUTE、DEALLOCATE语句怎么用
    小编给大家分享一下MySQL 5.7中PREPARE、EXECUTE、DEALLOCATE语句怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们...
    99+
    2024-04-02
  • MySQL PREPARE语句怎么使用
    在MySQL中,PREPARE语句用于动态地创建和执行SQL语句。它的一般语法如下:PREPARE statement_name F...
    99+
    2023-09-15
    MySQL
  • mysql prepare的作用是什么
    今天小编给大家分享一下mysql prepare的作用是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一...
    99+
    2023-04-21
    mysql prepare
  • mysql中prepare使用报错怎么解决
    当在MySQL中使用prepare语句时出现错误,可能有几种解决方法: 检查语法错误:首先,请确保prepare语句的语法正确。检...
    99+
    2024-04-09
    mysql
  • MySQL中预处理语句prepare、execute、deallocate怎么用
    这篇文章将为大家详细讲解有关MySQL中预处理语句prepare、execute、deallocate怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 ...
    99+
    2024-04-02
  • mysql中prepare怎么传出参数
    在MySQL中,准备语句(Prepare Statement)用于预编译 SQL 语句,可以提高查询的性能并防止 SQL 注入攻击。...
    99+
    2024-04-09
    mysql
  • mysql中prepare语句的作用是什么
    在MySQL中,PREPARE语句用于准备一个动态SQL语句,该语句可以包含占位符(placeholders),然后将该语句保存在一...
    99+
    2024-04-22
    mysql
  • 分析PostgreSQL中的Prepare Transaction特性
    本篇内容介绍了“分析PostgreSQL中的Prepare Transaction特性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大...
    99+
    2024-04-02
  • 存储过程中的MySQL PREPARE语句
    MySQL PREPARE语句用于在存储过程中动态准备和执行SQL语句。它的语法如下:```PREPARE statement_na...
    99+
    2023-09-27
    MySQL
  • Mysql prepare预处理的具体使用
    目录1.预处理2.预处理应用方式A.例子:B.预处理对执行计划变化跟踪C.存储过程包含预处理D.通过profile 查看解析语句的开销3.总结MySQL PREPARE预处理技术意义...
    99+
    2024-04-02
  • php中的htmlspecialchars_decode怎么用
    htmlspecialchars_decode函数用于将HTML实体转换为普通字符。它的用法如下: string htmlspeci...
    99+
    2024-04-02
  • php中的extends怎么用
    这篇文章主要介绍“php中的extends怎么用”,在日常操作中,相信很多人在php中的extends怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中的extends怎么用”的疑惑有所帮助!接下来...
    99+
    2023-06-30
  • PHP中的and怎么用
    这篇“PHP中的and怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“PHP中的and怎么用”文章吧。在PHP中,and...
    99+
    2023-06-30
  • php中的each怎么用
    本篇内容主要讲解“php中的each怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php中的each怎么用”吧!在PHP中,each()函数用于返回当前元素的键名和键值,并将内部指针向前移...
    99+
    2023-06-30
  • MySQL的prepare使用及遇到bug解析过程
    目录一、问题发现二、问题调查过程三、问题解决方案四、问题总结一、问题发现 在一次开发中使用 MySQL PREPARE 以后,从 prepare 直接取 name 赋值给 lex-&...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作