1.下载Composer-Setup.exe (getcomposer.org)并安装
2.移动到xampp/hotdocs文件夹,执行如下命令php
php composer create-project --prefer-dist laravel/laravel blog
3.用PhpStorm打开能够看到如图项目结构
4.能够直接输入命令 php artisan serve 运行,也能够访问apache,显示以下图表示成功
这时Laravel就安装成功了。
5.修改.env文件中的数据库信息laravel
1.新建数据库建表插入数据数据库
DROP TABLE IF EXISTS `book`; CREATE TABLE `book` ( `id` int(11) NOT NULL AUTO_INCREMENT, `book_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL, `book_sort` int(11) DEFAULT NULL, `book_mark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = MyISAM AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of book -- ---------------------------- INSERT INTO `book` VALUES (1, '水浒传', 1, '四大名著'); INSERT INTO `book` VALUES (2, '西游记', 1, '孙悟空'); INSERT INTO `book` VALUES (3, '红楼梦', 2, '无'); INSERT INTO `book` VALUES (4, '三国演义', 2, '');
3.新建Model和Controllerapache
php artisan make:model Models/Book php artisan make:controller BookController
修改Book.phpjson
<?php namespace AppModelsModels; use IlluminateDatabaseEloquentFactoriesHasFactory; use IlluminateDatabaseEloquentModel; class Book extends Model { use HasFactory; /**关联到模型的数据表 * @var string */ protected $table = 'book'; /**Laravel有默认时间字段,不须要能够修改为 false * @var bool */ public $timestamps = false; }
4.建立简单的api
编写BookController.phpapi
<?php namespace AppHttpControllers; use AppModelsModelsBook; use IlluminateHttpRequest; class BookController extends Controller { public function getBookById($id) { // 根据id查询 $book = Book::find($id); // return response()是返回想要 json()转换成json字符串可是是unicode setEncodingOptions设置编码 return response()->json($book)->setEncodingOptions(JSON_UNESCAPED_UNICODE); } }
编写 routes/api.phpapp
<?php use IlluminateHttpRequest; use IlluminateSupportFacadesRoute; /* |-------------------------------------------------------------------------- | API Routes |-------------------------------------------------------------------------- | | Here is where you can register API routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | is assigned the "api" middleware group. Enjoy building your API! | */ Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); Route::any('/book/{id}',[AppHttpControllersBookController::class,'getBookById']);
5.php artisan serve或者直接访问apache
一个简单接口的编写到此结束,这样写起来很简单,可是中间也遇到了点小问题,好比MySQL编码问题,Navcat有很大的问题,show variables like 'char%';在MySQL cmd中显示是utf-8可是在navcat中却成了latin,这个要在navcat链接那里编辑编码为自动,这样就能够和系统的同样了。composer