2013-02-11 48 views
0

我嘗試處理異常並按以下方式編寫代碼,但當文檔成功保存在數據庫中時,我也會得到異常。是try/catch在PHP總是工作正常?

$table = "MyRequestTable"; 
$smsID = new MongoId(); 
$data = array("_id" => $smsID, 
      "requestUserid" => 2500, 
      "requestDate" => new MongoDate(strtotime(date('Y-m-d H:i:s'))), 
      "requestNosSms" => 1 
     ); 
try 
{ 
    $result = $table->insert($data, array("safe" => TRUE)); 
    echo $smsID ; 
} 
catch (Exception $e) 
{ 
    echo $e->getMessage(); 
} 

我得到了下面的異常 「無效的修改規定:$推」

+0

是的,它工作正常。你需要更好地理解你的代碼。 – Jon 2013-02-11 13:49:02

+0

是的,這不是這個代碼導致的問題,你需要回到那個調試器恐怕 – Sammaye 2013-02-11 13:53:02

+0

你的代碼很奇怪。您將$ table分配給一個字符串,但將它當作一個對象處理? 「無效修飾符」異常來自數據庫,因此您的文檔未正確更新。 此外,您的代碼和異常消息不匹配。導致異常的代碼究竟是什麼? – bjori 2013-04-22 21:40:06

回答

2

即使INSERT命令執行正確的可能情況,當其他一些指令拋出異常。你確定代碼的其他部分是正確的嗎?