目錄
- 一、編寫接口所需幾樣工具或軟件(均是win7+64位)
- 二、安裝后臺(tái)開發(fā)環(huán)境
- 三、正式編寫接口
- 四、總結(jié)
一、編寫接口所需幾樣工具或軟件(均是win7+64位)
1.phpStudy、SQLyog和編碼工具(sublime text/webStorm/vs code均可,按自己習(xí)慣來);
2.安裝好phpStudy之后,打開軟件,點(diǎn)擊啟動(dòng);如果Apache和MySQL右邊的顯示都是綠色的,那么說明服務(wù)啟動(dòng)成功;另外注意一下開始的PHP服務(wù)版本,因?yàn)椴煌陌姹緦?duì)應(yīng)不同node.js版本或SQLyog版本,如果開啟不了,則自行百度解決,一般都是要下載對(duì)應(yīng)支持的VC9(分32位和64位)或VC11(分32位和64位)。

3.特別要注意的是,項(xiàng)目代碼一定要放在WWW目錄下,也就是安裝phpStudy的目錄下。我的是phpStudy/WWW,新版phpStudy可能會(huì)不一樣,多找找?guī)讉€(gè)文件夾,找到WWW文件夾即可。

4.SQLyog:用于操作數(shù)據(jù)庫。正版的需要破解(破解方法百度),打開之后就彈出以下窗口,有四個(gè)信息是比較重要的。
1)MySQL主機(jī)地址:填寫 localhost即可
2)用戶名和密碼:默認(rèn)都是root
3)端口:默認(rèn)3306
4)點(diǎn)擊“連接”按鈕進(jìn)入(千萬要注意:只有在mysql服務(wù)啟動(dòng)之后,才能點(diǎn)擊連接,不然會(huì)出現(xiàn)錯(cuò)誤碼2003的錯(cuò)誤提示)

右擊左上角的root@localhost,然后選擇創(chuàng)建數(shù)據(jù)庫;

然后在數(shù)據(jù)庫名,填寫自己的數(shù)據(jù)名稱;

創(chuàng)建之后,點(diǎn)擊左邊的+號(hào)打開,然后再右擊table,會(huì)出現(xiàn)創(chuàng)建表的選項(xiàng);

點(diǎn)擊創(chuàng)建表之后彈出以下框,隨后在表格里填寫你想要的字段和這個(gè)字段的數(shù)據(jù)類型和長度大小以及是否為空,默認(rèn)值為多少等,填寫完之后點(diǎn)擊左下角的創(chuàng)建表就創(chuàng)建成功了;

最起初我們肯定要獲取到數(shù)據(jù)的,也就是get請(qǐng)求,所以表中我們要填充一些數(shù)據(jù)

二、安裝后臺(tái)開發(fā)環(huán)境
1.這里博主用的是比較流行的后臺(tái)框架lavarel,可以直接去管理一鍵下載即可,然后解壓安裝;
2.將解壓后的文件夾放在phpStudy下的WWW文件夾下,開啟phpStudy之后,直接在瀏覽器里輸入:
localhost/解壓后的文件夾名稱/server/public/,然后回車就可看到以下界面(紅色框是我的文件路徑),出現(xiàn)以下界面說明開發(fā)環(huán)境搭建成功。

三、正式編寫接口
1.首先要連接到你的本地?cái)?shù)據(jù)庫(也就是剛才在SQLyog里新建的數(shù)據(jù)庫)。將解壓后的項(xiàng)目拖到編輯工具里(這里我用的sublime text),然后打開.env文件,如下圖:

2.然后在里面修改一些配置。下圖中我框出的六個(gè)配置要跟之前設(shè)置的要匹配,比如DB_CONNECTION=mysql;DB_HOST=localhost;DB_PORT=3306;即連接的數(shù)據(jù)庫類型、域名和端口號(hào),這個(gè)一般都是默認(rèn)的,也與我們之前設(shè)置的是匹配的,最重要的是下面橢圓框框出的三個(gè):
DB_DATABASE=test;這個(gè)是鏈接的數(shù)據(jù)庫名稱,剛才我們新建的就是test數(shù)據(jù)庫;
下面兩個(gè)是用戶名和密碼:默認(rèn)都是root
DB_USERNAME=root
DB_PASSWORD=root

3.連接好數(shù)據(jù)庫之后,在app目錄下新建一個(gè)Question.php文件,用于訪問question數(shù)據(jù)表;

class Question extends Model{
protected $table = 'question';//這里是訪問question這個(gè)表
protected $primaryKey = 'id';//這是訪問question表必須要帶的字段
protected function getDateFormat()
{
return time();
}
}
4.開始編寫真正意義上的接口了。在app/Http/Controllers目錄下新建一個(gè)QuestionController.php文件,然后在上面寫上:
use App\Question 表示要接入這個(gè)數(shù)據(jù),便于操作;

public function getQuestion(Request $request){
$response = array('status'=>'0','msg'=>'failed','data'=>'');
$data = array();
// 獲取請(qǐng)求參數(shù)值
$questionId = $request->input("questionId");
// 根據(jù)參數(shù)值去向表里查找對(duì)應(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.寫完接口之后,最后是通過路由進(jìn)行網(wǎng)絡(luò)請(qǐng)求的,所以還要在routes目錄下的web.php文件里寫下:
Route::any('getQuestion', "QuestionController@getQuestion");用于訪問這個(gè)接口;

6.測試。最后一個(gè)步驟就是測試自己寫的接口是否可用,測試之前一定要記得把服務(wù)器打開。在瀏覽器地址輸入欄輸入:
localhost/解壓后的文件夾名稱/server/public/getQuestion?questionId=1就可以獲取到后臺(tái)返回的數(shù)據(jù)了。這時(shí)會(huì)發(fā)現(xiàn),返回的數(shù)據(jù)跟我們之前在表中填充的數(shù)據(jù)是一模一樣的,那就意味著你寫接口是成功的。

四、總結(jié)
在以上三個(gè)大步驟當(dāng)中,肯定不是那么一帆風(fēng)順的,肯定會(huì)遇到各種各樣的問題,這個(gè)時(shí)候也是考驗(yàn)自己發(fā)現(xiàn)問題和解決問題能力的時(shí)候。不過大致的后臺(tái)開發(fā)過程就是這樣的,但是要注意的是,這個(gè)是本地配置的開發(fā)環(huán)境,用的也是本地的數(shù)據(jù)。最后要想讓自己的作品讓別人也能看見并且使用,那是需要把你的代碼部署到服務(wù)器的,那個(gè)時(shí)候各個(gè)配置問題又不一樣了,那就要把本地的開發(fā)環(huán)境換成線上的環(huán)境了。
以上就是如何用PHP編寫簡單的api數(shù)據(jù)接口的詳細(xì)內(nèi)容,更多關(guān)于PHP編寫api接口的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- php的api數(shù)據(jù)接口書寫實(shí)例(推薦)
- PHP服務(wù)器端API原理及示例講解(接口開發(fā))
- PHP保姆級(jí)API制作教程,不會(huì)剁手