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


PHP CacheControl::flushDBCache方法代码示例

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


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

示例1: receiveTrackback

function receiveTrackback($blogid, $entry, $title, $url, $excerpt, $site)
{
    global $database, $blog, $defaultURL;
    if (empty($url)) {
        return 5;
    }
    $post = new Post();
    if (!$post->doesAcceptTrackback($entry)) {
        return 3;
    }
    $filtered = 0;
    if (!Filter::isAllowed($url)) {
        if (Filter::isFiltered('ip', $_SERVER['REMOTE_ADDR']) || Filter::isFiltered('url', $url)) {
            $filtered = 1;
        } else {
            if (Filter::isFiltered('content', $excerpt)) {
                $filtered = 1;
            } else {
                if (!fireEvent('AddingTrackback', true, array('entry' => $entry, 'url' => $url, 'site' => $site, 'title' => $title, 'excerpt' => $excerpt))) {
                    $filtered = 1;
                }
            }
        }
    }
    $title = correctTTForXmlText($title);
    $excerpt = correctTTForXmlText($excerpt);
    $url = UTF8::lessenAsEncoding($url);
    $site = UTF8::lessenAsEncoding($site);
    $title = UTF8::lessenAsEncoding($title);
    $excerpt = UTF8::lessenAsEncoding($excerpt);
    $trackback = new Trackback();
    $trackback->entry = $entry;
    $trackback->url = $url;
    $trackback->site = $site;
    $trackback->title = $title;
    $trackback->excerpt = $excerpt;
    if ($filtered > 0) {
        $trackback->isfiltered = true;
    }
    if ($trackback->add()) {
        if ($filtered == 0) {
            CacheControl::flushDBCache('trackback');
        }
        return $filtered == 0 ? 0 : 3;
    } else {
        return 4;
    }
    return 0;
}
开发者ID:hinablue,项目名称:TextCube,代码行数:49,代码来源:blog.response.remote.php

示例2: flushEntry

 function flushEntry($entryId = null)
 {
     global $database;
     if (empty($entryId)) {
         $entryId = '';
     } else {
         $entryId = $entryId . '\\_';
     }
     $cache = pageCache::getInstance();
     $Entries = POD::queryColumn("SELECT name\n\t\t\tFROM {$database['prefix']}PageCacheLog\n\t\t\tWHERE blogid = " . getBlogId() . "\n\t\t\tAND (name like 'entry\\_" . $entryId . "%' OR name = 'commentRSS_" . $entryId . "')");
     CacheControl::purgeItems($Entries);
     if (!empty($entryId)) {
         $entry = POD::queryCell("SELECT userid, category FROM {$database['prefix']}Entries\n\t\t\t\tWHERE blogid = " . getBlogId() . " AND id = {$entryId}");
         if (!empty($entry)) {
             CacheControl::flushAuthor($entry['userid']);
             CacheControl::flushCategory($entry['category']);
             CacheControl::flushDBCache();
         }
     } else {
         CacheControl::flushAuthor();
         CacheControl::flushCategory();
         CacheControl::flushDBCache();
     }
     unset($cache);
     return true;
 }
开发者ID:hinablue,项目名称:TextCube,代码行数:26,代码来源:Needlworks.Cache.PageCache.Legacy.php

示例3: trashCommentInOwner

function trashCommentInOwner($blogid, $id)
{
    global $database;
    if (!is_numeric($id)) {
        return false;
    }
    $entryId = POD::queryCell("SELECT entry FROM {$database['prefix']}Comments WHERE blogid = {$blogid} AND id = {$id}");
    //	$result = POD::queryCount("UPDATE {$database['prefix']}Comments SET isfiltered = UNIX_TIMESTAMP() WHERE blogid = $blogid AND id = $id");
    //	if ($result && $result == 1) {
    if (POD::query("UPDATE {$database['prefix']}Comments SET isfiltered = UNIX_TIMESTAMP() WHERE blogid = {$blogid} AND id = {$id}")) {
        if (POD::query("UPDATE {$database['prefix']}Comments SET isfiltered = UNIX_TIMESTAMP() WHERE blogid = {$blogid} AND parent = {$id}")) {
            CacheControl::flushCommentRSS($entryId);
            CacheControl::flushDBCache('comment');
            updateCommentsOfEntry($blogid, $entryId);
            return true;
        }
    }
    return false;
}
开发者ID:hinablue,项目名称:TextCube,代码行数:19,代码来源:blog.comment.php

示例4: protectEntry

function protectEntry($id, $password)
{
    global $database;
    $password = POD::escapeString($password);
    $result = POD::queryCount("UPDATE {$database['prefix']}Entries SET password = '{$password}', modified = UNIX_TIMESTAMP() WHERE blogid = " . getBlogId() . " AND id = {$id} AND visibility = 1");
    if ($result > 0) {
        CacheControl::flushEntry($id);
        CacheControl::flushDBCache('entry');
        CacheControl::flushDBCache('comment');
        CacheControl::flushDBCache('trackback');
        return true;
    } else {
        return false;
    }
}
开发者ID:hinablue,项目名称:TextCube,代码行数:15,代码来源:blog.entry.php

示例5: trashCommentInOwner

function trashCommentInOwner($blogid, $id)
{
    if (!is_numeric($id)) {
        return false;
    }
    $pool = DBModel::getInstance();
    $pool->reset('Comments');
    $pool->setQualifier('blogid', 'eq', $blogid);
    $pool->setQualifier('id', 'eq', $id);
    $entryId = $pool->getCell('entry');
    $pool->setAttribute('isfiltered', Timestamp::getUNIXtime());
    if ($pool->update()) {
        $pool->unsetQualifier('id');
        $pool->setQualifier('parent', 'eq', $id);
        if ($pool->update()) {
            CacheControl::flushCommentRSS($entryId);
            CacheControl::flushDBCache('comment');
            filterTrashComments($blogid, $id);
            updateCommentsOfEntry($blogid, $entryId);
            return true;
        }
    }
    return false;
}
开发者ID:webhacking,项目名称:Textcube,代码行数:24,代码来源:comment.php

示例6: flushEntry

 function flushEntry($entryId = null)
 {
     global $database;
     if (empty($entryId)) {
         $entryId = '';
     } else {
         $entryId = intval($entryId);
     }
     $Entries = POD::queryColumn("SELECT name\n\t\t\tFROM {$database['prefix']}PageCacheLog\n\t\t\tWHERE blogid = " . getBlogId() . "\n\t\t\tAND (name like 'entry-" . $entryId . "-%' OR name like '%RSS-" . $entryId . "' OR name like '%ATOM-" . $entryId . "')");
     if (!empty($Entries)) {
         CacheControl::purgeItems($Entries);
     }
     if (!empty($entryId)) {
         $entry = POD::queryRow("SELECT userid, category, published FROM {$database['prefix']}Entries\n\t\t\t\tWHERE blogid = " . getBlogId() . " AND id = {$entryId}");
         if (!empty($entry)) {
             $entry['period'] = Timestamp::getYearMonth($entry['published']);
             CacheControl::flushAuthor($entry['userid']);
             CacheControl::flushCategory($entry['category']);
             CacheControl::flushArchive($entry['period']);
             CacheControl::flushDBCache('entry');
         }
     } else {
         CacheControl::flushAuthor();
         CacheControl::flushCategory();
         CacheControl::flushDBCache('entry');
     }
     return true;
 }
开发者ID:ni5am,项目名称:Textcube,代码行数:28,代码来源:Needlworks.Cache.PageCache.php

示例7: protectEntry

function protectEntry($id, $password)
{
    $pool->init("Entries");
    $pool->setQualifier("blogid", "eq", getBlogId());
    $pool->setQualifier("id", "eq", $id);
    $pool->setQualifier("visibility", "eq", 1);
    $pool->setAttribute("password", $password, true);
    $pool->setAttribute("modified", Timestamp::getUNIXtime());
    $result = $pool->update();
    if ($result) {
        CacheControl::flushEntry($id);
        CacheControl::flushDBCache('entry');
        CacheControl::flushDBCache('comment');
        CacheControl::flushDBCache('trackback');
        return true;
    } else {
        return false;
    }
}
开发者ID:ni5am,项目名称:Textcube,代码行数:19,代码来源:entry.php

示例8: remove

 function remove($id = null)
 {
     // attachment & category is own your risk!
     global $database, $gCacheStorage;
     $this->init();
     if (!empty($id)) {
         $this->id = $id;
     }
     // step 0. Get Information
     if (!isset($this->id) || !Validator::number($this->id, 1)) {
         return $this->_error('id');
     }
     if (!($query = $this->_buildQuery())) {
         return false;
     }
     if (!($entry = $query->getRow('category, visibility'))) {
         return $this->_error('id');
     }
     // step 1. Check Syndication
     if ($entry['visibility'] == 3) {
         requireComponent('Eolin.API.Syndication');
         Syndication::leave($this->getLink());
     }
     CacheControl::flushEntry($this->id);
     CacheControl::flushDBCache('entry');
     CacheControl::flushDBCache('comment');
     CacheControl::flushDBCache('trackback');
     $gCacheStorage->purge();
     // step 2. Delete Entry
     $sql = "DELETE FROM " . $database['prefix'] . "Entries WHERE blogid = " . $this->blogid . " AND id = " . $this->id;
     if (POD::queryCount($sql)) {
         // step 3. Delete Comment
         POD::execute("DELETE FROM {$database['prefix']}Comments WHERE blogid = " . $this->blogid . " AND entry = " . $this->id);
         // step 4. Delete Trackback
         POD::execute("DELETE FROM {$database['prefix']}RemoteResponses WHERE blogid = " . $this->blogid . " AND entry = " . $this->id);
         // step 5. Delete Trackback Logs
         POD::execute("DELETE FROM {$database['prefix']}RemoteResponseLogs WHERE blogid = " . $this->blogid . " AND entry = " . $this->id);
         // step 6. update Category
         if (isset($entry['category'])) {
             $target = ($parentCategory = Category::getParent($entry['category'])) ? '(id = ' . $entry['category'] . ' OR id = ' . $parentCategory . ')' : 'id = ' . $entry['category'];
             if (isset($entry['visibility']) && $entry['visibility'] != 1) {
                 POD::query("UPDATE {$database['prefix']}Categories SET entries = entries - 1, entriesinlogin = entriesinlogin - 1 WHERE blogid = " . $this->blogid . " AND " . $target);
             } else {
                 POD::query("UPDATE {$database['prefix']}Categories SET entriesinlogin = entriesinlogin - 1 WHERE blogid = " . $this->blogid . " AND " . $target);
             }
         }
         // step 7. Delete Attachment
         $attachNames = POD::queryColumn("SELECT name FROM {$database['prefix']}Attachments\n\t\t\t\tWHERE blogid = " . getBlogId() . " AND parent = " . $this->id);
         if (POD::execute("DELETE FROM {$database['prefix']}Attachments WHERE blogid = " . getBlogId() . " AND parent = " . $this->id)) {
             foreach ($attachNames as $attachName) {
                 if (file_exists(__TEXTCUBE_ATTACH_DIR__ . "/" . getBlogId() . "/{$attachName}")) {
                     @unlink(__TEXTCUBE_ATTACH_DIR__ . "/" . getBlogId() . "/{$attachName}");
                 }
             }
         }
         // step 8. Delete Tags
         $this->deleteTags();
         // step 9. Clear RSS
         requireComponent('Textcube.Control.RSS');
         RSS::refresh();
         return true;
     }
     return false;
 }
开发者ID:ragi79,项目名称:Textcube,代码行数:64,代码来源:Textcube.Data.Post.php

示例9: protectEntry

function protectEntry($id, $password)
{
    $ctx = Model_Context::getInstance();
    $password = POD::escapeString($password);
    $result = POD::queryCount("UPDATE " . $ctx->getProperty('database.prefix') . "Entries SET password = '{$password}', modified = UNIX_TIMESTAMP() WHERE blogid = " . getBlogId() . " AND id = {$id} AND visibility = 1");
    if ($result > 0) {
        CacheControl::flushEntry($id);
        CacheControl::flushDBCache('entry');
        CacheControl::flushDBCache('comment');
        CacheControl::flushDBCache('trackback');
        return true;
    } else {
        return false;
    }
}
开发者ID:ragi79,项目名称:Textcube,代码行数:15,代码来源:blog.entry.php


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