gpt4 book ai didi

php - 在 MYSQL 存储查询中使用 PHP 变量

转载 作者:行者123 更新时间:2023-11-29 03:09:37 24 4
gpt4 key购买 nike

我在发布此之前进行了搜索,但没有找到我的问题的答案。

我在数据库中有一个存储查询的表(使用存储在数据库中的 php 变量):

select * from accounts where type = 'client'
select * from accounts where user_id = $userid
select * from accounts where name = '$name'

我假设当我从数据库中提取特定查询时,PHP 会识别该变量并替换它,但它会将其视为常规文本。

有没有办法让 PHP 将 $__ 替换为实际存在的变量?我想也许是 eval() 函数??

最佳答案

您可能会尝试将其用作准备好的语句。因此,如果您的数据库存储的查询如下所示:

select * from accounts where type = 'client'
select * from accounts where user_id = ?
select * from accounts where name = ?

并且您使用 PDO 准备语句如下:

$pdo = new PDO($dsn, $user, $pass);
$statement = $pdo->prepare($secondOfTheAboveQueries);
$statement->execute(array($userId));
$account = $statement->fetch();

如果您必须一次使用各种变量处理一些语句,您还可以使用带有命名变量的准备好的查询,例如 user_id = :userid 而不是问号。

您可能还想考虑工作方式类似的存储过程。可以在此处找到对两者的解释:

http://php.net/manual/en/pdo.prepared-statements.php

关于php - 在 MYSQL 存储查询中使用 PHP 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10302684/

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