Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';不要多次调用PHP函数_Php_Pdo - Fatal编程技术网

Can';不要多次调用PHP函数

Can';不要多次调用PHP函数,php,pdo,Php,Pdo,我正试图用一个额外的查询来修复我以前的问题 然而,当我试图对我的PHP函数进行多次调用时,它只显示第一个函数,而不是两个函数 代码: (是的,我知道这是不安全的,但我想在安全部分工作之前先完成我的工作) 我使用test($row['extra\u cat\u id'])调用它。 谢谢 fetch()仅获取一行,请参阅 使用fetch()迭代以逐1获取1,或者使用fetchAll()方法获取所有结果,请参见您所说的“它只显示第一个而不是两个结果”是什么意思?“您希望的输出是什么?另外,对于记录

我正试图用一个额外的查询来修复我以前的问题

然而,当我试图对我的PHP函数进行多次调用时,它只显示第一个函数,而不是两个函数

代码:


(是的,我知道这是不安全的,但我想在安全部分工作之前先完成我的工作)

我使用test
($row['extra\u cat\u id'])调用它。

谢谢

fetch()
仅获取一行,请参阅


使用
fetch()
迭代以逐1获取1,或者使用
fetchAll()
方法获取所有结果,请参见您所说的“它只显示第一个而不是两个结果”是什么意思?“您希望的输出是什么?另外,对于记录,该查询是安全的。“(是的,我知道这是不安全的”是不正确的。我只能调用函数一次,即使它应该可以处理多个调用。例如
test($row['extra\u cat\u id'));test($row['extra\u cat\u id'))
?是的,就像那样。没有什么能阻止你在那个庄园里调用函数两次,所以我很确定你的问题是,你的查询对其中一个调用返回0个结果。在
$sth->execute();
之前添加
var\u dump($sth->rowCount());
,然后查看它返回什么。
<?php function test($colour)
{

    $pdo = new PDO("pgsql:host=localhost;dbname=testdb","teun",""); // or use a global one 
    //$pdo = $GLOBALS['pdo'];
    $sth = $pdo->prepare("SELECT * FROM threads WHERE cat_id = :cat_id AND thread_date=(
    SELECT max(thread_date) FROM threads
    )");
 $sth->bindParam(':cat_id', $colour, PDO::PARAM_STR, 12);
 $sth->execute();
$result = $sth->fetch();
echo $result ["thread_name"];
}
?>