我的代碼如下。我有一個數組,並通過使用這個數組填充數據庫表。如果表中存在某個id,我更新它的行,如果id不存在,那麼我創建行並將數據寫入行。CakePHP數據庫查詢for循環
我清空表,然後運行該代碼:
$arrayOfIds=array('1234', '5678');
foreach ($arrayOfIds as $twitter_user_id) {
$this->ModelName->twitter_user_id = $twitter_user_id;
if ($this->ModelName->exists()) {
echo "$twitter_user_id exists<br>";
} else {
echo "$twitter_user_id not exists<br>";
$this->ModelName->create(array ('twitter_user_id' => $twitter_user_id));
}
$data = array(
'ModelName' => array(
'age' => 15,
'last_status' => 'online'
));
$this->ModelName->save($data);
}
結果被回顯到屏幕:
1234不存在
5678存在
當我檢查表,2行(twitter_user_id = 1234和twitter_user_id = 5678)被添加到表格中。
當我重新運行我的代碼以表兩個條目,我也得到這樣的迴應:
1234不存在
5678存在
難道我錯過了什麼?
除非y你是否使用了插件中的模型(也許是Twitter的一個模型?),而你沒有顯示它,它應該是'$ this-> ModelName-> id'來檢查它是否存在。 – jeremyharris