目錄
- 一、編寫接口所需幾樣工具或軟件(均是win7+64位)
- 二、安裝后臺開發(fā)環(huán)境
- 三、正式編寫接口
- 四、總結(jié)
一、編寫接口所需幾樣工具或軟件(均是win7+64位)
1.phpStudy、SQLyog和編碼工具(sublime text/webStorm/vs code均可,按自己習(xí)慣來);
2.安裝好phpStudy之后,打開軟件,點擊啟動;如果Apache和MySQL右邊的顯示都是綠色的,那么說明服務(wù)啟動成功;另外注意一下開始的PHP服務(wù)版本,因為不同的版本對應(yīng)不同node.js版本或SQLyog版本,如果開啟不了,則自行百度解決,一般都是要下載對應(yīng)支持的VC9(分32位和64位)或VC11(分32位和64位)。
3.特別要注意的是,項目代碼一定要放在WWW目錄下,也就是安裝phpStudy的目錄下。我的是phpStudy/WWW,新版phpStudy可能會不一樣,多找找?guī)讉€文件夾,找到WWW文件夾即可。
4.SQLyog:用于操作數(shù)據(jù)庫。正版的需要破解(破解方法百度),打開之后就彈出以下窗口,有四個信息是比較重要的。
1)MySQL主機地址:填寫 localhost即可
2)用戶名和密碼:默認(rèn)都是root
3)端口:默認(rèn)3306
4)點擊“連接”按鈕進入(千萬要注意:只有在mysql服務(wù)啟動之后,才能點擊連接,不然會出現(xiàn)錯誤碼2003的錯誤提示)
右擊左上角的root@localhost,然后選擇創(chuàng)建數(shù)據(jù)庫;
然后在數(shù)據(jù)庫名,填寫自己的數(shù)據(jù)名稱;
創(chuàng)建之后,點擊左邊的+號打開,然后再右擊table,會出現(xiàn)創(chuàng)建表的選項;
點擊創(chuàng)建表之后彈出以下框,隨后在表格里填寫你想要的字段和這個字段的數(shù)據(jù)類型和長度大小以及是否為空,默認(rèn)值為多少等,填寫完之后點擊左下角的創(chuàng)建表就創(chuàng)建成功了;
最起初我們肯定要獲取到數(shù)據(jù)的,也就是get請求,所以表中我們要填充一些數(shù)據(jù)
二、安裝后臺開發(fā)環(huán)境
1.這里博主用的是比較流行的后臺框架lavarel,可以直接去管理一鍵下載即可,然后解壓安裝;
2.將解壓后的文件夾放在phpStudy下的WWW文件夾下,開啟phpStudy之后,直接在瀏覽器里輸入:
localhost/解壓后的文件夾名稱/server/public/,然后回車就可看到以下界面(紅色框是我的文件路徑),出現(xiàn)以下界面說明開發(fā)環(huán)境搭建成功。
三、正式編寫接口
1.首先要連接到你的本地數(shù)據(jù)庫(也就是剛才在SQLyog里新建的數(shù)據(jù)庫)。將解壓后的項目拖到編輯工具里(這里我用的sublime text),然后打開.env文件,如下圖:
2.然后在里面修改一些配置。下圖中我框出的六個配置要跟之前設(shè)置的要匹配,比如DB_CONNECTION=mysql;DB_HOST=localhost;DB_PORT=3306;即連接的數(shù)據(jù)庫類型、域名和端口號,這個一般都是默認(rèn)的,也與我們之前設(shè)置的是匹配的,最重要的是下面橢圓框框出的三個:
DB_DATABASE=test;這個是鏈接的數(shù)據(jù)庫名稱,剛才我們新建的就是test數(shù)據(jù)庫;
下面兩個是用戶名和密碼:默認(rèn)都是root
DB_USERNAME=root
DB_PASSWORD=root
3.連接好數(shù)據(jù)庫之后,在app目錄下新建一個Question.php文件,用于訪問question數(shù)據(jù)表;
class Question extends Model{
protected $table = 'question';//這里是訪問question這個表
protected $primaryKey = 'id';//這是訪問question表必須要帶的字段
protected function getDateFormat()
{
return time();
}
}
4.開始編寫真正意義上的接口了。在app/Http/Controllers目錄下新建一個QuestionController.php文件,然后在上面寫上:
use App\Question 表示要接入這個數(shù)據(jù),便于操作;
public function getQuestion(Request $request){
$response = array('status'=>'0','msg'=>'failed','data'=>'');
$data = array();
// 獲取請求參數(shù)值
$questionId = $request->input("questionId");
// 根據(jù)參數(shù)值去向表里查找對應(yīng)的數(shù)據(jù)
$question = Question::find($questionId);
// 查找完畢之后,把查找到的數(shù)據(jù)賦值給response下的data字段
$response['data'] = $question;
$response['status'] = '2';
$response['msg'] = 'success';
return json_encode($response);
}
5.寫完接口之后,最后是通過路由進行網(wǎng)絡(luò)請求的,所以還要在routes目錄下的web.php文件里寫下:
Route::any('getQuestion', "QuestionController@getQuestion");用于訪問這個接口;
6.測試。最后一個步驟就是測試自己寫的接口是否可用,測試之前一定要記得把服務(wù)器打開。在瀏覽器地址輸入欄輸入:
localhost/解壓后的文件夾名稱/server/public/getQuestion?questionId=1就可以獲取到后臺返回的數(shù)據(jù)了。這時會發(fā)現(xiàn),返回的數(shù)據(jù)跟我們之前在表中填充的數(shù)據(jù)是一模一樣的,那就意味著你寫接口是成功的。
四、總結(jié)
在以上三個大步驟當(dāng)中,肯定不是那么一帆風(fēng)順的,肯定會遇到各種各樣的問題,這個時候也是考驗自己發(fā)現(xiàn)問題和解決問題能力的時候。不過大致的后臺開發(fā)過程就是這樣的,但是要注意的是,這個是本地配置的開發(fā)環(huán)境,用的也是本地的數(shù)據(jù)。最后要想讓自己的作品讓別人也能看見并且使用,那是需要把你的代碼部署到服務(wù)器的,那個時候各個配置問題又不一樣了,那就要把本地的開發(fā)環(huán)境換成線上的環(huán)境了。
以上就是如何用PHP編寫簡單的api數(shù)據(jù)接口的詳細(xì)內(nèi)容,更多關(guān)于PHP編寫api接口的資料請關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- php的api數(shù)據(jù)接口書寫實例(推薦)
- PHP服務(wù)器端API原理及示例講解(接口開發(fā))
- PHP保姆級API制作教程,不會剁手