LNMP结合PHP框架Laravel的使用
相对于熟读官方文档,更重要的是要把框架环境搭起来。
一、环境介绍##
- 操作系统:centOS
- 数据库: mysql 5.6 (阿里云RDS)
- PHP 5.4.4 (>=5.4即可)
- Laravel 5.0
Linux + Nginx + Mysql + Php
的环境搭建好。这里有一篇非常详细的文章,按着操作即可
P.S.
- Linux阿里云已经自带了,本文使用的是centOS 6.5 64位的ECS
- 关于Nginx和Apache的选择看自己喜好,本文使用的是反向代理能手Nginx
- 是否安装Mysql也要看自己的情况,例如你使用阿里云的RDS,那就没必要安装了
- 局部安装
- 全局安装,即在系统任意目录下可使用。本文只介绍此种安装方法。官方安装文档
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
安装完成,使用以下命令看是否安装成功
composer -V
出现版本号,即说明安装成功
三、安装Laravel## 按照Laravel的官方文档说明即可,建议使用【通过Laravel安装工具】,没什么坑,这里略过
提示:由于Laravel还依赖于一些的PHP扩展,所以使用yum安装
sudo install yum php-mysql php-mcrypt php-mbstring php-tokenizer php-openssl
安装完成后,在Nginx的配置文件(一般是
/etc/nginx/conf.d/default.conf
)最下方添加如下配置location / {
try_files $uri $uri/ /index.php?$query_string;
}
来到你的laravel工程目录下,看到storage和vendor文件夹,使用以下命令修改其文件读写权限,让Nginx用户能读写它
sudo chmod -R 766 storage
sudo chmod -R 766 vendor
四、让MVC跑起来!## 在此之前,你应该读一下官方文档 路由、控制器、数据库使用基础、Eloquent ORM
至此,可以开始coding,开发一个 MVC的demo了,此demo的功能是将数据库表tbl_item从数据库里读出来,并以json格式响应给浏览器。
假设你已经通过
laravel new demo
来初始化你的web app。- 数据库里建库(demo)、建表(tbl_item),(字段随意定)
- 配置配置文件 config/database.php
- 直接操作数据库,往tbl_item里插入一条数据
- 开始coding
Route::get('/item/{id}', 'ItemController@showItem');
demo/app/http/controllers/ 目录新添文件 ItemController.php,代码如下
model = new Item();
}public function showItem($id)
{
$users = $this->model->fetchAll();
echo json_encode($users);
Log::info('获取用户列表,通过msyql');
}
}
demo/app/目录下新增文件 Item.php 代码如下
all()->toJson();
return $items;
}
}
使用浏览器访问
http://yourIp/item/1,即可列出所有的item数据
熟读文档## 【LNMP结合PHP框架Laravel的使用】查看
推荐阅读
- ThinkPHP5使用paginate分页后数组无法遍历【解决方法】
- php版本错误导致的报错
- PHP设计模式(二十三)—数据映射模式(Data|PHP设计模式(二十三)—数据映射模式(Data Mapper Pattern)
- PHP 版本从 5.x 升级到 7.x
- PHP--函数
- 有cms就不用mysql_drycms: 基于php7(swoole)+mysql的智能内容管理系统,后台不需要写代码,支持docker部署。...
- moodle|moodle php代码解读_搭建基于Windows + Apache + PHP + MySQL的Moodle平台
- 学java还是python还是php-零基础应该选择学习|学java还是python还是php-零基础应该选择学习 java、php、前端 还是 python()
- 通用印刷体识别|通用印刷体识别 php,实战腾讯云ORC文字识别
- PHP实现导入大量CSV数据的示例代码