Last active
December 16, 2015 19:39
-
-
Save bjrnqprs/5487074 to your computer and use it in GitHub Desktop.
Typo3 6.0 clear cache ( @link http://stackoverflow.com/a/15927837/440643 )
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Clears the cache based on the command $cacheCmd. | |
* | |
* $cacheCmd='pages': Clears cache for all pages. Requires admin-flag to | |
* be set for BE_USER. | |
* | |
* $cacheCmd='all': Clears all cache_tables. This is necessary if | |
* templates are updated. Requires admin-flag to be set for BE_USER. | |
* | |
* $cacheCmd=[integer]: Clears cache for the page pointed to by $cacheCmd | |
* (an integer). | |
* | |
* $cacheCmd='cacheTag:[string]': Flush page and pagesection cache by given tag | |
* | |
* $cacheCmd='cacheId:[string]': Removes cache identifier from page and page section cache | |
* | |
* Can call a list of post processing functions as defined in | |
* $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearCachePostProc'] | |
* (numeric array with values being the function references, called by | |
* \TYPO3\CMS\Core\Utility\GeneralUtility::callUserFunction()). | |
* | |
* Note: The following cache_* are intentionally not cleared by | |
* $cacheCmd='all': | |
* | |
* - cache_md5params: RDCT redirects. | |
* - cache_imagesizes: Clearing this table would cause a lot of unneeded | |
* Imagemagick calls because the size informations have | |
* to be fetched again after clearing. | |
* | |
* @param string $cacheCmd The cache command, see above description | |
* @return void | |
* @link http://stackoverflow.com/a/15927837/440643 | |
*/ | |
protected function clearCache($cacheCmd) { | |
/** @var $tce \TYPO3\CMS\Core\DataHandling\DataHandler */ | |
$tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance("TYPO3\\CMS\\Core\\DataHandling\\DataHandler"); | |
$tce->stripslashes_values = 0; | |
$tce->start(array(), array()); | |
switch($cacheCmd) { | |
case 'pages': | |
case 'all': | |
$tce->admin = 1; | |
} | |
$tce->clear_cacheCmd($cacheCmd); | |
unset($tce); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment