답변:
정말로 원한다면 하나 이상의 캐시 유형을 정리할 수도 있습니다. 이것은 실제로 관리자 섹션이 수행하는 방식입니다. 아래에Mage_Adminhtml_CacheController::massRefreshAction
모든 매개 변수를 반복 types
하고 다음을 호출 한다는 것을 알 수 있습니다.
$tags = Mage::app()->getCacheInstance()->cleanType($type);
Mage::dispatchEvent('adminhtml_cache_refresh_type', array('type' => $type));
$updatedTypes++;
가능한 유형은 다음과 같습니다.
그리고 이것들은 전화로 반환 할 수 있습니다 Mage::app()->getCacheInstance()->getTypes()
모든 캐시를 지우는 빠른 외부 스크립트 :
<?php
require_once './app/Mage.php';
umask(0);
Mage::app('default');
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
try {
$allTypes = Mage::app()->useCache();
foreach($allTypes as $type => $value) {
Mage::app()->getCacheInstance()->cleanType($type);
Mage::dispatchEvent('adminhtml_cache_refresh_type', array('type' => $type));
echo "{$type} </br>";
}
echo 'done';
} catch (Exception $e) {
echo $e->getMessage();
}
우리는 n98-magerun을 사용할 수 있습니다 . 특히 배포 스크립트를 실행하는 동안 캐시를 플러시해서는 안됩니다. 또한 sys:setup:incremental
Magento 설정 스크립트의보다 제어 된 실행 에 대해서는 부속 명령을 보십시오 .
모든 캐시 저장소를 정말로 지워야하는 경우 다음 코드를 사용하십시오.
Mage::app()->getCacheInstance()->flush();
Flush 함수는 기본 magento 캐시 기능을 호출합니다. 자세한 설명이 필요하면 다음 URL을 참조하십시오.