Laravel本就好玩
2017-01-09 本文已影响0人
布尔教育
隐式控制器
路由声明:
Route::controller('users', 'UsController');
控制器写法
class UsController extends Controller
{
//get请求默认方法
//地址栏请求:http://xx.com/users
public function getIndex(){
echo 123;
}
//地址栏请求:http://xx.com/users/add
public function getAdd(){
echo 'ass';
}
//POST提交请求:http://xx.com/users/add
public function postAdd(){
echo 'postAdd';
}
}
缓存
路由缓存
在你的项目部署完成后执行
php artisan route:cache
生成路由缓存,缓存一旦生成,app/Http/routes.php
文件将失去作用;
想要清除缓存路由执行:
php artisan route:clear
使用路由缓存可以大幅降低注册全部路由所需的时间。在某些情况下,你的路由注册甚至可以快上一百倍!
文件缓存
laravel有很多缓存方式,默认使用文件(file),但是不管用哪种缓存都需要先引入缓存基类 use Cache;
添加缓存:
//键,值,有时间
//有则修改,无则添加,无返回值
Cache::put('key', 'value', $minutes);
//有则返回false,添加失败;
//无则返回true,添加成功;
Cache::add('key', 'value', $minutes);
//添加永久有效数据,除非手动删除,否则不失效
Cache::forever('key', 'value');
获取缓存:
//返回缓存中的值
$value = Cache::get('key');
//如果没有值,或者已经失效,返回 'default'
$value = Cache::get('key', 'default');
//如果没有'key',函数会被调用,
$value = Cache::get('key', function() {
//重新写入缓存
Cache::put('ke', 'valueeee','1');
//返回123
return 123;
});
//获取并删除缓存
Cache::pull('key');
判断是否有缓存:Cache::has('key')
删除缓存:
//删除缓存
Cache::forget('key');
//清空所有缓存
Cache::flush();
文件系统
use Storage;
文件默认存放地址:
storage/app
文件常用操作:
//保存信息到文件中:
Storage::put('file.jpg', '123');
//将数据在文件开头处插入
Storage::prepend('file.log', 'Prepended Text');
//将数据在文件结尾处插入
Storage::append('file.log', 'Appended Text');
//获取文件中的信息:
Storage::get('file.jpg');
//复制文件
Storage::copy('old/file1.jpg', 'new/file1.jpg');
//剪切文件
Storage::move('old/file1.jpg', 'new/file1.jpg');
//删除文件
Storage::delete('file.jpg');
Storage::delete(['file1.jpg', 'file2.jpg']);
//获取文件的大小并以 bytes 单位返回
$size = Storage::size('file1.jpg');
//最后修改时间并返回 UNIX 时间戳
$time = Storage::lastModified('file1.jpg');
目录常用操作:
//创建指定的目录
Storage::makeDirectory('/a/b/c');
//移除磁盘上的单个目录以及所包含的全部文件
Storage::deleteDirectory($directory);
//返回指定目录下的目录数组
$directories = Storage::directories($directory);
// 递归...
$directories = Storage::allDirectories($directory);
//返回指定目录下的文件名数组
$files = Storage::files($directory);
//返回包含指定目录下所有子目录的文件
Storage::allFiles($directory);