环境说明
使用MAMP中php、Mysql服务
使用phpstorm作为开发集成环境
使用laravel作为开发框架
环境搭建
1、MAMP的安装和使用
安装
1)下载安装破解
2)打开MAMP在general标签下点击“set port to 80,443,3306”设置apache和M有SQL的端口号,host标签使用默认配置,php标签选择默认php版本,个人使用的是7.0.0。
3)点击右上角启动服务则开启apache和mysql服务
问题
1)MAMP无法启动服务,报错端口冲突
目前只遇到过一种就是本机自带的apache服务开启了,所以MAMP的apache无法开启,
首先在浏览器输入localhost回车页面如果显示“it works”则说明系统自带的apache开启了,此时解决办法是在命令行输入sudo apachectl stop关闭系统apache服务,然后再次尝试开启。如果还是无法开启就可能是80端口冲突自己解决下。
2)验证服务开启
验证apache:浏览器数据localhost:端口(如果是80则可以省略)回车,显示MAMP的默认页面则说明apache服务开启了
验证mysql:点击MAMP右上角webstart进入页面后点击phpMyAdmin即可看到数据库管理页面。
3)虽然MAMP安装了php指定了版本号但是在命令行下或者在安装其他依赖php的的软件时都会使用系统自带的php,如何指定成mamp中的指定版本?
命令行在用户目录下ls -a应该有.bash_project文件(如果安装了zsh则使用.zshrc)使用vim打开然后在最底部添加
export MAMP_PHP=/Applications/MAMP/bin/php/php7.0.0/bin
export PATH="$MAMP_PHP:$PATH"
保存并退出,执行source ~./bash_profile(zsh对应.zshrc)再次查看php版本php -v显示则会使用MAMP中的指定版本
4)php.ini如何编辑?
mamp->file->edit template->php->xx.ini
其他说明
1)在MAMP安装成功后就可以进行php开发了:进入mamp的htdocs文件夹,看到index.php这个文件就是默认的主页对应localhost:80,对此文件进行编辑比如<?php echo"hello php" ?>刷新浏览器localhost:80会看到"hello php"详细内容不介绍了。
2、phpstorm的安装和使用
安装
1)下载安装破解
2)进入设置页面,在language&frameworks标签选择php,设置php版本为MAMP中指定的版本,interpreter后面点击...选择php路径,MAMP中php7.0.0的路径为/Applications/MAMP/bin/php/php7.0.0/bin/php,选择后interpreter后面的刷新按钮会从灰色变成蓝色,说明配置成功否则配置失败,此处是最重要的配置一定要配置正确才可以使用php进行开发。
3)使用浏览器进行调试的话就可以直接进行php开发了,无需其他设置。
4)可以安装一些插件
问题
1)使用phpstorm打开MAMP中htdocs的index.php,右键点击运行,会直接从浏览器打开该页面,但是会发现显示错误,查看url,发现端口号是63343。
2)php代码错误但是浏览器却不报错。
3)php代码内部使用post表单传递参数失败。
以上错误都是由于phpstorm使用默认部署造成的,解决办法进入设置页面build,execution,deployment标签下deployment中新建一个部署
name:myDeployment
type:inplace
web server root url http:localhost:80
local path:/Applications/MAMPhtdocs/xxx
web path on server "myDeployment":/xxx
填写好之后点击应用,然后再次在phpstorm中右键运行文件会发现url地址已经不再使用63343端口了,其他的问题也同时解决。
其他说明
1)如果使用phpstorm直接进行开发需要解决上面说明的问题,我是用的是2016年2月的版本,其他版本是否有问题不清楚。
2)phpstorm需要依赖php环境,而下面要讲的laravel有其他插件所以可以使用系统的php或mamp的php或使用自己插件的php。
3、laravel的安装和使用
安装
1)安装过程省略
2)安装有两种方法1种使用composer、一种使用homestead,
homestead是一套跨平台的环境包含了laravel所需的全部资源包括php和数据库等,如果使用该环境则不需要安装MAMP,我没有使用homestead原因是我是从mamp开始进行php的学习的,然后到phpstorm,到laravel,是一个逐步渐进的过程,在我发现homestead并准备使用的时候我发现他的安装也是相当复杂,既然这样那就完全没有必要再使用了。
3)添加插件:laravel完整安装和项目的建立是一起的,项目建好后在目录右键选择composer,初始化composer并安装插件
初始化有两种方式1种是直接指定composer的下载地址,另一种点击下载再次下载一份
搜索barryvdh/laravel-ide-helper并安装,安装成功后重启加载插件,该插件是用来进行代码检测和补全的。
如果需要为app写接口,dingoApi是很好的插件。
4)启动服务
进入项目目录命令行执行php artisan serve启动php内建服务,浏览器输入http://localhost:8000即可看到laravel欢迎页面。
问题
1)composer安装:安装laravel默认匹配系统自带的php版本,如果要使用mamp中的高版本按照mamp问题3)进行修改。(使用系统自带的有可能会出现php版本过低的情况)
2)如何使用数据库?
我是用的是MAMP中安装的mysql,进入phpMyAdmin页面创建数据库如myDB
在laravel项目中设置.env和config database.php中mysql的参数,修改用户名和密码还有数据库名字
在laravel中执行php artisan migrate:make create-users-table 创建表“create-users-table”则会在myDB下创建表,项目中会生成xxx-create-users-table.php文件,在其中编辑表的元素即可。例如
public function up() {
Schema::create('users', function($table){
$table->increments('id');
$table->string('username', 20);
$table->string('email', 100)->unique();
$table->string('password', 64);
$table->string('remember_token',62)->default('default');
$table->timestamps();
});
}
最后执行 php artisan migrate 在数据库中创建表和元素,完成后需要重新启动laravel!重启后就可以使用数据了。
其他说明
注意MAMP phpstorm laravel之间的关系单独使用mamp可以直接进行开发,搭配一个编辑器即可如sublime
单独使用phpstorm可以直接进行开发,不过需要使用系统的php和apache服务
单独使用laravel可以进行开发,需要使用homestead开发环境并且搭配一个编辑器如sublime
在本例中,可以将mamp理解为php和mysql服务提供者,phpstorm理解为编辑器,laravel理解为纯的框架