0

Cakephp を使用して、MongoDB で影響を受けるすべてのフィールドを更新する方法。開始時刻と終了時刻を照会したとします。特定のユーザーの時間の間に影響を受けるすべてのフィールドを更新したいと考えています。

<?php
  $stime = $this->data["User"]["sTime"]; //$stime = "2:29 PM";
  $etime = $this->data["User"]["eTime"]; //$eTime = "3:40 PM";
  $user = $this->data["User"]["affected_user"];
?>

開始時間と終了時間内のすべてのフィールドが影響を受けます。status というフィールドを更新して「1」に設定したいと思います。ありがとう

4

1 に答える 1

1

updateAll()ステートメントを使用して、次のように複数のフィールドを更新できます。

<?php 

   // first of all convert the start time and end time in proper date format the use the statement like bellow.

   $this->ModelName->updateAll(array('status' => 1), array('time >=' => $stime, 'time <' => $etime));

?>

複数のフィールドを更新する場合は、同じ配列で同様のステータスを指定できます。詳細については、cakephp サイトのupdateAll() ドキュメントを参照してください。

于 2013-10-18T04:06:44.927 に答える