mirror of
				https://github.com/yiisoft/yii2.git
				synced 2025-11-04 14:46:19 +08:00 
			
		
		
		
	Update caching-data.md
This commit is contained in:
		@ -23,9 +23,9 @@ if ($data === false) {
 | 
				
			|||||||
// 这儿 $data 可以使用了。
 | 
					// 这儿 $data 可以使用了。
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
从2.0.11版本开始, [缓存组件](#cache-components) 
 | 
					从 2.0.11 版本开始, [缓存组件](#cache-components) 
 | 
				
			||||||
提供了[[yii\caching\Cache::getOrSet()|getOrSet()]] 方法来简化数据的取回、计算和存储。
 | 
					提供了 [[yii\caching\Cache::getOrSet()|getOrSet()]] 方法来简化数据的取回、计算和存储。
 | 
				
			||||||
下面的代码逻辑和上一个例子是完全一样的:
 | 
					下面的代码逻辑和上一个例子是完全一样的:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```php
 | 
					```php
 | 
				
			||||||
$data = $cache->getOrSet($key, function () {
 | 
					$data = $cache->getOrSet($key, function () {
 | 
				
			||||||
@ -33,10 +33,10 @@ $data = $cache->getOrSet($key, function () {
 | 
				
			|||||||
});
 | 
					});
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
当缓存中有关联$key的数据时,将返回这个缓存的值。
 | 
					当缓存中有关联 $key 的数据时,将返回这个缓存的值。
 | 
				
			||||||
否则就执行匿名函数来计算出将要缓存的数据并返回它。
 | 
					否则就执行匿名函数来计算出将要缓存的数据并返回它。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
如果匿名函数需要作用域外的数据时,可以使用`use`语句把这些数据传递到匿名函数中。
 | 
					如果匿名函数需要作用域外的数据时,可以使用 `use` 语句把这些数据传递到匿名函数中。
 | 
				
			||||||
例如:
 | 
					例如:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```php
 | 
					```php
 | 
				
			||||||
@ -84,7 +84,7 @@ $data = $cache->getOrSet($key, function () use ($user_id) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
由于所有缓存组件都支持同样的一系列 API ,并不需要修改使用缓存的业务代码
 | 
					由于所有缓存组件都支持同样的一系列 API ,并不需要修改使用缓存的业务代码
 | 
				
			||||||
就能直接替换为其他底层缓存组件,只需在应用配置中重新配置一下就可以。
 | 
					就能直接替换为其他底层缓存组件,只需在应用配置中重新配置一下就可以。
 | 
				
			||||||
例如,你可以将上述配置修改为使用 [[yii\caching\ApcCache|APC cache]]:
 | 
					例如,你可以将上述配置修改为使用 [[yii\caching\ApcCache|APC cache]]:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```php
 | 
					```php
 | 
				
			||||||
@ -420,14 +420,15 @@ $result = $db->cache(function ($db) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
### 缓存冲刷 <span id="cache-flushing">
 | 
					### 缓存冲刷 <span id="cache-flushing">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
当你想让所有的缓存数据失效时,可以调用[[yii\caching\Cache::flush()]]。
 | 
					当你想让所有的缓存数据失效时,可以调用 [[yii\caching\Cache::flush()]]。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
冲刷缓存数据,你还可以从控制台调用`yii cache/flush`。
 | 
					冲刷缓存数据,你还可以从控制台调用 `yii cache/flush`。
 | 
				
			||||||
 - `yii cache`: 列出应用中可用的缓存组件
 | 
					 - `yii cache`:列出应用中可用的缓存组件
 | 
				
			||||||
 - `yii cache/flush cache1 cache2`: 冲刷缓存组件`cache1`, `cache2` 
 | 
					 - `yii cache/flush cache1 cache2`:刷新缓存组件`cache1`,`cache2` 
 | 
				
			||||||
 (可以传递多个用空格分开的缓存组件)
 | 
					 (可以传递多个用空格分开的缓存组件)
 | 
				
			||||||
 - `yii cache/flush-all`: 冲刷应用中所有的缓存组件
 | 
					 - `yii cache/flush-all`:刷新应用中所有的缓存组件
 | 
				
			||||||
 | 
					 - `yii cache/flush-schema db`:清除给定连接组件的数据库表结构缓存
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> Info: 默认情况下,控制台应用使用独立的配置文件。
 | 
					> Info: 默认情况下,控制台应用使用独立的配置文件。
 | 
				
			||||||
所以,为了上述命令发挥作用,请确保Web应用和控制台应用配置相同的缓存组件。
 | 
					所以,为了上述命令发挥作用,请确保 Web 应用和控制台应用配置相同的缓存组件。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user