![](/img/trans.png)
[英]Determine if PDOStatement object originated from PDO::query() or PDO::prepare()
[英]How does PDO::prepare() generates a PDOStatement object?
如何通過PDO::prepare()
執行在PDOStatement類內設置readonly $queryString
屬性?
給定類定義,我看不到任何可以設置該查詢的功能。 這是否意味着如果PDO類實例不是通過PDO::prepare()
函數由PDO類實例生成的,則不能使用PDOStatement類?
PDOstatement是通過C代碼在內部創建的。 當然,C代碼可以直接設置任何屬性。
是的,如果不是由PDO類實例通過PDO::prepare()
(或query()
)生成的,則不能使用PDOStatement類(有用的東西)。
但是,您可以使用以下代碼重新聲明並告訴PDO使用它而不是標准的代碼
$pdo->setAttribute(PDO::ATTR_STATEMENT_CLASS, ['myPDOStatement', [$pdo]]);
從手冊 :
介紹
[PDOStatement類]表示准備好的語句,並在執行該語句后表示關聯的結果集。
看起來它必須由PDO::prepare()
創建。
但這有問題嗎? 我不能說遇到了要手動創建PDOStatement對象的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.