gpt4 book ai didi

php - 从数据库接收变量的最佳方式

转载 作者:行者123 更新时间:2023-11-29 13:01:57 25 4
gpt4 key购买 nike

我有一个自定义 Wordpress 表格,其中包含以下内容:

account_info
id | account_id | wp_title | wp_url
1 | 12345 | website | website.com

获得结果的最佳(或最快)方法是什么?

选项 1:

global $wpdb;   

$sql = "SELECT id, wp_title. wp_name FROM account_info";
$results = $wpdb->get_results($sql);

if(!empty($results)) {
foreach($results as $r) {
$id = $r->id;
$wp_title = $r->wp_title;
$wp_name = $r->wp_name;

}
}

选项 2:

$id = $wpdb->get_var("SELECT id FROM account_info");
$wp_title = $wpdb->get_var("SELECT wp_title FROM account_info");
$wp_name = $wpdb->get_var("SELECT wp_name FROM account_info");

最佳答案

当您谈论“最佳”和“最快”时 - 这些并不是您需要考虑的唯一因素。 可读性对于 future 的开发人员查看您的代码也是关键。

选项一清楚地表明,如果结果集不为空,则可以循环它们并设置一些变量。选项二是特定于框架的,这并不总是最好的方法。

因此,在进行微优化之前,请确保可读性处于最佳状态 - 永远不要为了另一个而牺牲其中一个。

就速度而言,只需确保正确索引数据库即可。您正在使用 PHP 可用的最快循环。此外,选项二是进行多个数据库查询。始终尝试将多个查询合并为一个查询 - 您不需要对实际不需要的数据库进行大量额外的调用。

您希望避免使用 global 关键字。这是不好的做法,并且会使您的代码无法测试。以另一种方式访问​​ $wpdb 变量,将其传递到函数中或在其他地方包含文件。请参阅why global variables are bad并在谷歌上搜索一下。

关于php - 从数据库接收变量的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23215697/

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