当前位置: 首页>>代码示例>>PHP>>正文


PHP Zend_Db_Adapter_Abstract::delete方法代码示例

本文整理汇总了PHP中Zend_Db_Adapter_Abstract::delete方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Db_Adapter_Abstract::delete方法的具体用法?PHP Zend_Db_Adapter_Abstract::delete怎么用?PHP Zend_Db_Adapter_Abstract::delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend_Db_Adapter_Abstract的用法示例。


在下文中一共展示了Zend_Db_Adapter_Abstract::delete方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: deleteOther

 public function deleteOther(ActiveSync_Model_SyncState $_syncState)
 {
     // remove all other synckeys
     $where = array($this->_db->quoteInto('device_id = ?', $_syncState->device_id), $this->_db->quoteInto('type = ?', $_syncState->type), $this->_db->quoteInto('counter != ?', $_syncState->counter));
     $this->_db->delete(SQL_TABLE_PREFIX . 'acsync_synckey', $where);
     return true;
 }
开发者ID:rodrigofns,项目名称:ExpressoLivre3,代码行数:7,代码来源:SyncState.php

示例2: saveRel

 public function saveRel(Mage_Admin_Model_Permissions_Rules $rule)
 {
     $this->_write->beginTransaction();
     try {
         $roleId = $rule->getRoleId();
         $this->_write->delete($this->_ruleTable, "role_id = {$roleId}");
         $masterResources = Mage::getModel('admin/permissions_roles')->getResourcesList2D();
         $masterAdmin = false;
         if ($postedResources = $rule->getResources()) {
             foreach ($masterResources as $index => $resName) {
                 if (!$masterAdmin) {
                     $permission = in_array($resName, $postedResources) ? 'allow' : 'deny';
                     $this->_write->insert($this->_ruleTable, array('role_type' => 'G', 'resource_id' => trim($resName, '/'), 'privileges' => '', 'assert_id' => 0, 'role_id' => $roleId, 'permission' => $permission));
                 }
                 if ($resName == 'all' && $permission == 'allow') {
                     $masterAdmin = true;
                 }
             }
         }
         $this->_write->commit();
     } catch (Mage_Core_Exception $e) {
         throw $e;
     } catch (Exception $e) {
         $this->_write->rollBack();
     }
 }
开发者ID:arslbbt,项目名称:mangentovies,代码行数:26,代码来源:Rules.php

示例3: delete

 public function delete(Mage_Admin_Model_Permissions_Roles $role)
 {
     $this->_write->beginTransaction();
     try {
         $this->_write->delete($this->_roleTable, "role_id={$role->getId()}");
         $this->_write->delete($this->_roleTable, "parent_id={$role->getId()}");
         $this->_write->delete($this->_ruleTable, "role_id={$role->getId()}");
         $this->_write->commit();
     } catch (Mage_Core_Exception $e) {
         throw $e;
     } catch (Exception $e) {
         $this->_write->rollBack();
     }
 }
开发者ID:arslbbt,项目名称:mangentovies,代码行数:14,代码来源:Roles.php

示例4: __unset

 /**
  * Remove um valor do registro
  *
  * @param string $key
  */
 public function __unset($key)
 {
     if (isset($this->{$key})) {
         $this->db->delete("registry", "context='{$this->getContext()}' AND `key`='{$key}'");
         $this->update();
     }
 }
开发者ID:rootzig,项目名称:SNEP,代码行数:12,代码来源:Registry.php

示例5: validate

 /**
  * get array of ids which got send to the client for a given class
  *
  * @param  Syncope_Model_IDevice|string  $_deviceId
  * @param  Syncope_Model_IFolder|string  $_folderId
  * @return Syncope_Model_SyncState
  */
 public function validate($_deviceId, $_folderId, $_syncKey)
 {
     $deviceId = $_deviceId instanceof Syncope_Model_IDevice ? $_deviceId->id : $_deviceId;
     $folderId = $_folderId instanceof Syncope_Model_IFolder ? $_folderId->id : $_folderId;
     $select = $this->_db->select()->from($this->_tablePrefix . 'synckey')->where($this->_db->quoteIdentifier('device_id') . ' = ?', $deviceId)->where($this->_db->quoteIdentifier('counter') . ' = ?', $_syncKey)->where($this->_db->quoteIdentifier('type') . ' = ?', $folderId);
     $stmt = $this->_db->query($select);
     $state = $stmt->fetchObject('Syncope_Model_SyncState');
     $stmt = null;
     # see https://bugs.php.net/bug.php?id=44081
     if (!$state instanceof Syncope_Model_ISyncState) {
         return false;
     }
     $this->_convertFields($state);
     // check if this was the latest syncKey
     $select = $this->_db->select()->from($this->_tablePrefix . 'synckey')->where($this->_db->quoteIdentifier('device_id') . ' = ?', $deviceId)->where($this->_db->quoteIdentifier('counter') . ' = ?', $_syncKey + 1)->where($this->_db->quoteIdentifier('type') . ' = ?', $folderId);
     $stmt = $this->_db->query($select);
     $moreRecentState = $stmt->fetchObject('Syncope_Model_SyncState');
     $stmt = null;
     # see https://bugs.php.net/bug.php?id=44081
     // found more recent synckey => the last sync repsone got not received by the client
     if ($moreRecentState instanceof Syncope_Model_ISyncState) {
         // undelete entries marked as deleted in syncope_content table
         $this->_db->update($this->_tablePrefix . 'content', array('is_deleted' => 0), array('device_id = ?' => $deviceId, 'folder_id = ?' => $folderId, 'creation_synckey = ?' => $state->counter, 'is_deleted = ?' => 1));
         // remove entries added during latest sync in syncope_content table
         $this->_db->delete($this->_tablePrefix . 'content', array('device_id = ?' => $deviceId, 'folder_id = ?' => $folderId, 'creation_synckey > ?' => $state->counter));
     } else {
         // finaly delete all entries marked for removal in syncope_content table
         $this->_db->delete($this->_tablePrefix . 'content', array('device_id = ?' => $deviceId, 'folder_id = ?' => $folderId, 'is_deleted = ?' => 1));
     }
     // remove all other synckeys
     $this->_deleteOtherStates($state);
     return $state;
 }
开发者ID:rodrigofns,项目名称:ExpressoLivre3,代码行数:40,代码来源:SyncState.php

示例6: delete

 /**
  * Proxy the call to delete
  *
  * @param  string|object $table
  * @param string $where
  */
 public function delete($table, $where = '')
 {
     if (is_object($table)) {
         $where = 'id = ' . $table->id;
         if ($this->searchService != null) {
             $this->searchService->delete($table);
         }
         if ($this->tagService != null) {
             $this->tagService->deleteTags($table, za()->getUser());
         }
         if ($this->itemLinkService != null) {
             $this->itemLinkService->deleteItem($table);
         }
         $table = get_class($table);
     }
     $table = strtolower($table);
     $return = false;
     try {
         $this->beginTransaction();
         if (is_array($where)) {
             $where = $this->bindValues($where);
         }
         $this->proxied->delete($table, $where);
         $return = true;
         $this->commit();
     } catch (Exception $e) {
         error_log(get_class($e) . " - Caught: " . $e->getMessage());
         error_log($e->getTraceAsString());
         $this->rollBack();
         throw $e;
     }
     return $return;
 }
开发者ID:nyeholt,项目名称:relapse,代码行数:39,代码来源:DbService.php

示例7: removeNode

 public function removeNode($ID)
 {
     if (!($info = $this->getNodeInfo($ID))) {
         return false;
     }
     if ($ID) {
         $this->_db->beginTransaction();
         try {
             // DELETE FROM my_tree WHERE left_key >= $left_key AND right_key <= $right_key
             $this->_db->delete($this->_table, $this->_left . ' >= ' . $info[$this->_left] . ' AND ' . $this->_right . ' <= ' . $info[$this->_right]);
             // UPDATE my_tree SET left_key = IF(left_key > $left_key, left_key – ($right_key - $left_key + 1), left_key), right_key = right_key – ($right_key - $left_key + 1) WHERE right_key > $right_key
             $sql = 'UPDATE ' . $this->_table . '
                 SET
                     ' . $this->_left . ' = IF(' . $this->_left . ' > ' . $info[$this->_left] . ', ' . $this->_left . ' - ' . ($info[$this->_right] - $info[$this->_left] + 1) . ', ' . $this->_left . '),
                     ' . $this->_right . ' = ' . $this->_right . ' - ' . ($info[$this->_right] - $info[$this->_left] + 1) . '
                 WHERE
                     ' . $this->_right . ' > ' . $info[$this->_right];
             $this->_db->query($sql);
             $this->_db->commit();
             return new Varien_Db_Tree_Node($info, $this->getKeys());
         } catch (Exception $e) {
             $this->_db->rollBack();
             echo $e->getMessage();
         }
     }
 }
开发者ID:chucky515,项目名称:Magento-CE-Mirror,代码行数:26,代码来源:Tree.php

示例8: isValid

 /**
  * Returns true if and only if $value meets the validation requirements
  *
  * If $value fails validation, then this method returns false, and
  * getMessages() will return an array of messages that explain why the
  * validation failed.
  *
  * @param  mixed $value
  * @return boolean
  * @throws \Zend_Valid_Exception If validation of $value is impossible
  */
 public function isValid($value)
 {
     if ($throttleSettings = $this->project->getAskThrottleSettings()) {
         // Prune the database for (very) old attempts
         $where = $this->db->quoteInto('gta_datetime < DATE_SUB(NOW(), INTERVAL ? second)', $throttleSettings['period'] * 20);
         $this->db->delete('gems__token_attempts', $where);
         // Retrieve the number of failed attempts that occurred within the specified window
         $select = $this->db->select();
         $select->from('gems__token_attempts', array(new \Zend_Db_Expr('COUNT(*) AS attempts'), new \Zend_Db_Expr('UNIX_TIMESTAMP(MAX(gta_datetime)) - UNIX_TIMESTAMP() AS last')))->where('gta_datetime > DATE_SUB(NOW(), INTERVAL ? second)', $throttleSettings['period']);
         $attemptData = $this->db->fetchRow($select);
         $remainingDelay = $attemptData['last'] + $throttleSettings['delay'];
         // \MUtil_Echo::track($throttleSettings, $attemptData, $remainingDelay);
         if ($attemptData['attempts'] > $throttleSettings['threshold'] && $remainingDelay > 0) {
             $this->logger->log("Possible token brute force attack, throttling for {$remainingDelay} seconds", \Zend_Log::ERR);
             $this->_messages = $this->translate->_('The server is currently busy, please wait a while and try again.');
             return false;
         }
     }
     // The pure token check
     if ($this->isValidToken($value)) {
         return true;
     }
     $max_length = $this->tracker->getTokenLibrary()->getLength();
     $this->db->insert('gems__token_attempts', array('gta_id_token' => substr($value, 0, $max_length), 'gta_ip_address' => $this->getRequest()->getClientIp()));
     return false;
 }
开发者ID:harmslijper,项目名称:gemstracker-library,代码行数:37,代码来源:TokenValidator.php

示例9: resetState

 /**
  * reset list of stored id
  *
  * @param Syncope_Model_IDevice|string $_deviceId
  * @param Syncope_Model_IFolder|string $_folderId
  */
 public function resetState($_deviceId, $_folderId)
 {
     $deviceId = $_deviceId instanceof Syncope_Model_IDevice ? $_deviceId->id : $_deviceId;
     $folderId = $_folderId instanceof Syncope_Model_IFolder ? $_folderId->id : $_folderId;
     $where = array($this->_db->quoteInto($this->_db->quoteIdentifier('device_id') . ' = ?', $deviceId), $this->_db->quoteInto($this->_db->quoteIdentifier('folder_id') . ' = ?', $folderId));
     $this->_db->delete($this->_tablePrefix . 'content', $where);
 }
开发者ID:rodrigofns,项目名称:ExpressoLivre3,代码行数:13,代码来源:Content.php

示例10: removeInactiveRounds

 /**
  * Remove the unanswered tokens for inactive rounds.
  *
  * @param \Gems_Tracker_RespondentTrack $respTrack The respondent track to check
  * @param int $userId Id of the user who takes the action (for logging)
  * @return int The number of tokens changed by this code
  */
 protected function removeInactiveRounds(\Gems_Tracker_RespondentTrack $respTrack, $userId)
 {
     $qTrackId = $this->db->quote($this->_trackId);
     $qRespTrackId = $this->db->quote($respTrack->getRespondentTrackId());
     $orgId = $this->db->quote($respTrack->getOrganizationId());
     $where = "gto_start_time IS NULL AND\n            gto_id_respondent_track = {$qRespTrackId} AND\n            gto_id_round != 0 AND\n            gto_id_round IN (SELECT gro_id_round\n                    FROM gems__rounds\n                    WHERE (gro_active = 0 OR gro_organizations NOT LIKE CONCAT('%|',{$orgId},'|%')) AND\n                        gro_id_track = {$qTrackId})";
     return $this->db->delete('gems__tokens', $where);
 }
开发者ID:GemsTracker,项目名称:gemstracker-library,代码行数:15,代码来源:TrackEngineAbstract.php

示例11: delete

 /**
  * Deletes existing rows.
  *
  * @param  array|string $where SQL WHERE clause(s).
  * @return int          The number of rows deleted.
  */
 public function delete($where)
 {
     if (!isset($where)) {
         throw new Exception('condition is null');
     }
     $where = $this->_translateToZendWhere($where);
     return $this->_adapter->delete($this->_tableName, $where);
 }
开发者ID:rocknoon,项目名称:TCVM,代码行数:14,代码来源:Model.php

示例12: delete

 /**
  * Delete row.
  *
  * @return bool Row deleted successfull.
  */
 public function delete(Days_Db_Row $row)
 {
     if (!isset($row->id)) {
         throw new Days_Exception('Not specified `id` for row to delete');
     }
     $where = $this->_db->quoteInto("_{$this->_name}_id=?", $row->id);
     return $this->_db->delete($this->_name, $where) > 0;
 }
开发者ID:laiello,项目名称:phpdays,代码行数:13,代码来源:Table.php

示例13: removeApplication

 /**
  * remove all relations for application
  *
  * @param string $applicationName
  *
  * @return void
  */
 public function removeApplication($applicationName)
 {
     $tableName = SQL_TABLE_PREFIX . 'relations';
     $select = $this->_db->select()->from($tableName)->columns('rel_id')->where($this->_db->quoteIdentifier('own_model') . ' LIKE ?', $applicationName . '_%');
     $relation_ids = $this->_db->fetchCol($select);
     if (is_array($relation_ids) && count($relation_ids) > 0) {
         $this->_db->delete($tableName, $this->_db->quoteInto($this->_db->quoteIdentifier('rel_id') . ' IN (?)', $relation_ids));
     }
 }
开发者ID:hernot,项目名称:Tine-2.0-Open-Source-Groupware-and-CRM,代码行数:16,代码来源:Sql.php

示例14: _migrateFromOldCalendar

 private function _migrateFromOldCalendar()
 {
     $db = $this->_db;
     $this->_oldCalId = $db->select()->from('module')->where('name = "Calendar"')->query()->fetchColumn();
     if (!in_array('calendar', $db->listTables()) || empty($this->_oldCalId)) {
         throw new Exception('Old Calendar is gone, cannot migrate');
     }
     $this->_newCalId = $db->select()->from('module')->where('name = "Calendar"')->query()->fetchColumn();
     $this->_db->delete('calendar2');
     $this->_copyEvents();
     $this->_updateSingleChangedOccurrences();
     $this->_updateUsers();
     $this->_updateRights();
     $this->_updateLastEnd();
     $this->_updateTags();
     $this->_updateHistory();
     $this->_regenerateSearch();
 }
开发者ID:RainyBlueSky,项目名称:PHProjekt,代码行数:18,代码来源:Migration.php

示例15: _alterEnumValues

 /**
  *
  * @param array $enumValues
  * @param boolean $reverse
  */
 protected function _alterEnumValues(array $enumValues, $reverse = false)
 {
     foreach ($enumValues as $tableName => $fields) {
         if ($this->_isTableExists($tableName)) {
             $table = $this->_db->describeTable($tableName);
             foreach ($fields as $fieldName => $fieldEnums) {
                 if (!isset($table[$fieldName])) {
                     continue;
                 }
                 preg_match('/^enum\\((.*)\\)$/', $table[$fieldName]['DATA_TYPE'], $matches);
                 foreach (explode(',', $matches[1]) as $value) {
                     $enums[] = trim($value, "'");
                 }
                 $newEnums = $enums;
                 if (isset($fieldEnums['add'])) {
                     if (!$reverse) {
                         foreach ($fieldEnums['add'] as $fieldEnum) {
                             $newEnums[] = $fieldEnum;
                         }
                     } else {
                         foreach ($fieldEnums['add'] as $fieldEnum) {
                             $this->_db->delete($tableName, $fieldName . ' = \'' . $fieldEnum . '\'');
                         }
                         $newEnums = array_diff($newEnums, $fieldEnums['add']);
                     }
                     $newEnums = array_unique($newEnums);
                 }
                 if (isset($fieldEnums['remove'])) {
                     if (!$reverse) {
                         foreach ($fieldEnums['remove'] as $fieldEnum) {
                             $this->_db->delete($tableName, $fieldName . ' = \'' . $fieldEnum . '\'');
                         }
                         $newEnums = array_diff($newEnums, $fieldEnums['remove']);
                     } else {
                         foreach ($fieldEnums['remove'] as $fieldEnum) {
                             $newEnums[] = $fieldEnum;
                         }
                     }
                     $newEnums = array_unique($newEnums);
                 }
                 sort($enums);
                 sort($newEnums);
                 if ($enums != $newEnums) {
                     foreach ($newEnums as &$value) {
                         $value = '\'' . $value . '\'';
                     }
                     $table[$fieldName]['DATA_TYPE'] = 'enum(' . implode(',', $newEnums) . ')';
                     $this->_alterTable($table[$fieldName]);
                 }
             }
         }
     }
 }
开发者ID:Sywooch,项目名称:forums,代码行数:58,代码来源:20150107.php


注:本文中的Zend_Db_Adapter_Abstract::delete方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。