gpt4 book ai didi

php - PHP-MySQL 中 SELECT 参数值的编码

转载 作者:行者123 更新时间:2023-11-30 21:24:35 25 4
gpt4 key购买 nike

下面的 Alt A 是来自 php-mysql 教程的声明。它按预期工作。
我发现 id-value 相当困惑并测试了 alt B。这也有效!
alt A 的 id-value 有什么意义?

MySQL 5.0.51, PHP 5.2.6

// Alt A :  
$sql = "SELECT * FROM example WHERE id = '".$q."'";
// Alt B :
$sql = "SELECT * FROM example WHERE id = $q";

最佳答案

这只是从静态数据和可变数据构建字符串的两种不同方法。

备选方案 A 使用串联,或使用串联运算符连接字符串和变量标记。

备选方案 B 使用变量扩展,其中双引号分隔字符串内的变量在评估时扩展为其值。

两者都不一定更好或更受欢迎,但如果您必须使用单引号分隔的字符串,例如,那么您需要使用备选方案 A。

当然,两者都比使用绑定(bind)参数构建 SQL 查询更可取,因为不这样做会使您容易受到 SQL 注入(inject)攻击。

关于php - PHP-MySQL 中 SELECT 参数值的编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/517201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com