2013-01-11 64 views
0

我使用Silex以及Doctrine。它對我來說都非常有用,直到我需要將ValueValue綁定爲LIMIT值。 PDO的默認行爲是在數字周圍插入引號,這顯然不可行。所以,解決方法是設置data_type參數。不幸的是,它會拋出一個錯誤。未找到類'Silex Provider PDO'。怎麼解決?

我的代碼

$start_num = 3; 
$stmt = $app['db']->prepare('SELECT * FROM myTable LIMIT ?,10'); 
$stmt->bindValue(1, $start_num, PDO::PARAM_INT); 

的錯誤

Fatal error: Class 'Silex\Provider\PDO' not found in ... 

大多數的答案,我發現對這個問題說,這是不被編譯/啓用PDO的警示信號,但我一直在使用Doctrine(依賴於PDO?)成功一段時間,沒有任何問題。

這是一個與教義問題?有沒有我做錯了我的代碼?

回答

5

這是一個命名空間的問題,如果這個代碼是在一類Silex\Provider命名空間下

嘗試

\PDO::PARAM_INT 
+1

我是歡迎您! – Pete