PHP PDO を使用してクエリを構造化するこれら 2 つの方法は、どちらも同じデータを返すことに気付きました。
//prepare with $dbh->prepare
$w_ft = "36";
$sth = $dbh->prepare("SELECT * FROM main_products_common_dimensions WHERE w_ft = :w_ft");
$sth->bindParam(':w_ft', $theId, PDO::PARAM_INT);
$sth->execute();
$result = $sth->fetchAll(); //PHP array of data
//prepare with pg_prepare()
$result = pg_prepare($con, "my_query", 'SELECT * FROM main_products_common_dimensions WHERE w_ft = $1');
$result = pg_execute($con, "my_query", array("48")); //A query result resource on success or FALSE on failure.
while ($row = pg_fetch_assoc($result)){
echo $row['w_ft'] . "<BR>";
}
http://php.net/manual/en/function.pg-execute.phpで、2 番目の方法が「成功した場合はクエリ結果リソース、失敗した場合は FALSE」を返すことを読みました。そこで、pg_fetch_assoc() を使用して反復処理を試みました。pg_
それは機能しますが、残りのSQL関数と一緒に廃止されていませんか? クエリの結果を確認するために、PDO で何かを使用する必要がありますか?
このため、私は PDO を使用している間は最初の方法を使用する傾向があります。これは標準ですか?
私の質問は、複数の値をいずれかの方法に送信する方法です。準備済みステートメントに配列を送信しようとすると、どちらの方法も機能しません
$w_ft = array("48", "36");
$result = pg_execute($con, "my_query", array("48", "36"));
このようにして、複数の値をクエリに送信できたと思いました。これどうやってするの?
ありがとうございました