gpt4 book ai didi

php - PDO-- 准备好的声明

转载 作者:行者123 更新时间:2023-11-29 14:19:29 26 4
gpt4 key购买 nike

我有两个递归函数:

1)

function getCategories($id)
{
global $con;
$select = $con->prepare('SELECT * FROM categories WHERE parent_category_id = :parent_category_id OR (parent_category_id IS NULL AND :parent_category_id IS NULL)');
$select->bindValue(':parent_category_id', $id, PDO::PARAM_NULL || PDO::PARAM_INT);
$select->execute();
// fetching.........
for() ... getCategories(.......);
}

2)

$select = $con->prepare('SELECT * FROM categories WHERE parent_category_id = :parent_category_id OR (parent_category_id IS NULL AND :parent_category_id IS NULL)');

function getCategories($id)
{
global $select;
$select->bindValue(':parent_category_id', $id, PDO::PARAM_NULL || PDO::PARAM_INT);
$select->execute();
// fetching.........
for() ... getCategories(.......);
}

哪个更好/更快?只准备一次陈述是否更好?

最佳答案

第二个应该更快,因为您不会调用不需要的语句。准备好的语句的想法是您必须准备一次。但找出答案的最佳方法是分析。

这里有一个简单的方法:

$start = microtime(true);

for ($i = 0; $i < 1000000; $i++){
//your code here
}

echo microtime(true) - $start;

关于php - PDO-- 准备好的声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11984909/

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