在线一区二区三区高清视频,国产精品妇女一二三区,美女被遭强高潮网站在线播放,实拍各种胸走光见奶头

PHP API接口應(yīng)用實(shí)例

時(shí)間:2016-12-29 17:51:38 類型:PHP
字號:    

PHP工作學(xué)習(xí)中, 經(jīng)常會遇到API接口的應(yīng)用, 因?yàn)闆]有接觸過, 就會感覺到非常難以下手, 這里給大家一個簡單的PHP實(shí)例, 希望對大家有所幫助!

實(shí)例功能:簡單實(shí)現(xiàn)API接口實(shí)例操作 1, 新聞標(biāo)題添加 2, 新聞標(biāo)題查詢

client.php: 客戶端[調(diào)取信息的一端]          service.php: 服務(wù)端[返回信息的一端]

數(shù)據(jù)庫大家自行導(dǎo)入,設(shè)置 fun.php中

$dsn = "mysql:host=localhost;dbname=myapi";
$db = new PDO($dsn, 'root', 'root');

為追求簡單, 這里沒有任何超級的邏輯, 都是簡單的理解, 對于不認(rèn)識的函數(shù),大家可以百度下了解下什么意思, 下面就直接上代碼了, 代碼的最后可以直接下載源代碼

service.php文件


header("Content-Type: text/html; charset=UTF-8");
require("fun.php");
$success = '';
$output = array();
$action = isset($_GET["action"])?$_GET["action"]:"";
if(empty($action)){
	$success = '0';
	$output = array('success'=>$success); //0表示參數(shù)錯誤
	exit(json_encode($output));  //將php數(shù)組轉(zhuǎn)換為JSON格式返回
}

$title = isset($_GET["title"])?$_GET["title"]:"";
if(empty($title)){
	$success = '1';
	$output = array('success'=>$success); //1表示標(biāo)題為空
	exit(json_encode($output));
}

$db = conndb(); //連接數(shù)據(jù)庫

if($action=="add"){ //新聞標(biāo)題查詢s
	$sql = "insert into news set title = '$title'";
	$count = $db->exec($sql);
    if($count){
			$success = '2';
			$output = array('success'=>$success); //2 添加新聞成功
			exit(json_encode($output));
	}
}
else if($action=="select"){
	$sql = "select * from news where title like '%".$title."%'";
	$result = query($db,$sql);
	if($result){$success = '3';}//3 查詢到新聞信息
	else{$success = '4';} //沒有查詢到新聞信息
	$output = array('success'=>$success,'result'=>$result);
	exit(json_encode($output));
}


client.php源代碼


header("Content-Type: text/html; charset=UTF-8");
	$data = array(
			  'action' => 'select', //添加信息 'select' 查詢信息
			  'title'  => '南昌雅騰'
	);
	$param = http_build_query($data); //用法 http://www.yinnangtuo.cn/news/show/86;
	
    $requesturl= "http://localhost:88/php/api/service.php?".$param; 
	//完整的訪問路徑如http://www.yinnangtuo.cn/service.php, 調(diào)用時(shí)修改為自己的域名接口完整網(wǎng)址sss

	//echo $requesturl;
	//通過curl方式獲取json數(shù)據(jù)
    $curl = curl_init(); //初始化
    curl_setopt($curl, CURLOPT_URL, $requesturl);//設(shè)置抓取的url 為 $requesturl
    curl_setopt($curl, CURLOPT_HEADER, 0);//設(shè)置頭文件的信息作為數(shù)據(jù)流輸出
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//設(shè)置獲取的信息以文件流的形式返回,而不是直接輸出。
    $data = curl_exec($curl);//執(zhí)行命令
    curl_close($curl);//關(guān)閉URL請求
	$obj=json_decode($data);
	
	$success = $obj->success;
	$status = "";
	switch($success){
		case '0': $status = "參數(shù)傳遞錯誤";break;
		case '1': $status = "添加新聞標(biāo)題不能為空";break;
		case '2': $status = "添加新聞成功";break;
		case '3': $status = "查詢到信息";break;
	}
	echo $status."<br/>";
	if($success=="3"){
		$result = $obj->result;
		foreach($result as $row){ //注意每個$row這里是一個對象, 而不是一個數(shù)組
			echo "標(biāo)題:".$row->title."<br/>";
		}
	}

源碼下載: /public/static/uploads/pic/201612/29/2016122955108320370351.zip