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