當前位置:首頁 » 編程語言 » php怎麼寫介面

php怎麼寫介面

發布時間: 2024-11-23 20:53:38

㈠ 如何使用php的CodeIgniter框架來編寫API介面

1.將解壓的框架包放到的你的php環境的www/api目錄下:這里建立api目錄作為測試項目目錄。並運行localhost/api/index.php,就可以看到環境界面了

9.在瀏覽器中運行介面,根據不同的參數返回不同的數據。

獲取的是json數據

localhost/api/index/php?username=張三&format=json

獲取的是xml數據

localhost/api/index/php?username=張三&format=xml

㈡ PHP的預定義介面都有哪些,都是這么使用的

介面是為解決PHP中無法進行多重繼承的問題而設置的,只聲明API,而沒有實現API,放在實現的類中去完成這個API的具體實現。
介面的聲明關鍵字為interface,如下代碼就是聲明一個介面
interface IExampleInterface{
function myfunction();
}
如下代碼使用這個介面
class myClass implements IExampleInterface{
function myfunction(){
echo "myfunction is called";
}
}
也可以使用多個介面
class myClass implements IExampleInterface,AnotherIExampleInterface{
//code
}
必須將介面中的myfunction函數進行實現,否則會提示錯誤
此外,instanceof操作符,用來判斷某個對象是否實現了某個特定的介面
$a = myClass();
$flag = $a instanceof IExampleInterface;
echo $flag;將輸出1,否則為0~
還有不明白的可以發消息給我

㈢ 怎麼在PHP中定義和使用介面interface

1、介面的定義:
介面:一種成員屬性為抽象的特殊抽象類,在程序中同為規范的作用
2、其實他們的作用很簡單,當有很多人一起開發一個項目時,可能都會去調用別人寫的一些類,那你就會問,我怎麼知道他的某個功能的實現方法是怎麼命名的呢,這 個時候PHP介面類interface就起到作用了,當我們定義了一個介面類時,它裡面的方式是下面的子類必須實現的,比如 :
interface Shop
{
public function buy($gid);
public function sell($gid);
public function view($gid);
}
我聲明一個shop介面類,定義了三個方法:買(buy),賣(sell),看(view),那麼繼承此類的所有子類都必須實現這3個方法少一個都 不行,如果子類沒有實現這些話,就無法運行。實際上介面類說白了,就是一個類的模板,一個類的規定,如果你屬於這類,你就必須遵循我的規定,少一個都不 行,但是具體你怎麼去做,我不管,那是你的事,如:
class BaseShop implements Shop { public function buy($gid) { echo('你購買了ID為 :'.$gid.'的商品'); } public function sell($gid) { echo('你賣了ID為 :'.$gid.'的商品'); } public function view($gid) { echo('你查看了ID為 :'.$gid.'的商品'); } }
結論 : PHP介面類interface就是一個類的領導者,指明方向,子類必須完成它指定方法。這樣不同的開發者就不要去了解別人怎麼命名相應的方法。
3、php中使用介面(interface)實現多重繼承:
我們都知道PHP中的類(class)是單繼承的,那是不是就沒有辦法實現多重繼承了呢?答案是否定的.我們可以通過其它特殊的方式實現類的多重 繼承,比如使用介面(interface)實現,只要把類的特徵抽象為介面,並通過實現介面的方式讓對象有多重身份,通過這樣就可以模擬多重繼承了。
下面是一個用介面(interface)實現多重繼承的例子,源代碼如下:
<?php
interface UserInterface{ //定義User的介面
function getname();
}
interface TeacherInterface{ //teacher相關介面
function getLengthOfService();
}
class User implements UserInterface { //實現UserInterface介面
private $name = "tom";
public function getName(){
return $this->name;
}
}
class Teacher implements TeacherInterface { //實現TeacherInterface介面
private $lengthOfService = 5; // 工齡
public function getLengthOfService(){
return $this->lengthOfService;
}
}
// 繼承自User類,同時實現了TeacherInterface介面.
class GraateStudent extends User implements TeacherInterface {
private $teacher ;
public function __construct(){
$this->teacher = new Teacher();
}
public function getLengthOfService(){
return $this->teacher->getLengthOfService();
}
}
class Act{
//注意這里的類型提示改成了介面類型
public static function getUserName(UserInterface $_user){
echo "Name is " . $_user->getName() ."<br>";
}
//這里的類型提示改成了TeacherInterface類型.
public static function getLengthOfService(TeacherInterface $_teacher){
echo "Age is " .$_teacher->getLengthOfService() ."<br>";
}
}
$graateStudent = new GraateStudent();
Act::getUserName($graateStudent);
Act::getLengthOfService($graateStudent);
//結果正如我們所要的,實現了有多重身份的一個對象.
?>
示例運行結果如下:
Name is tom
Age is 5
4、介面類和抽象類的區別
抽象類 :1.類中至少有一個抽象方法
2.前面加abstract
介面: 1.成員屬性為常量const
2.前面不用加abstract
3.類中全部為抽象方法,介面抽象方法為public
5、介面類和抽象類 共同點:
1.本身不能被實例化,必須繼承或者引用
2.繼承和引用後,抽象方法必須重載才能實例化
關鍵字 interface.引用關鍵字 implements

㈣ 怎樣用PHP給別人寫介面,一個寫個別人用的介面的代碼例子

<?php
/*以下均未進行注入過濾,自行修改*/
$option=$_GET['option'];//操作
$key=$_GET['key'];//認證key
if($key!='123')die('Key認證失敗');//此處可以換成資料庫檢索或者數組檢索
if($option=='return'){
echojson_encode(array('error'=>0,'message'=>'Ok'));//輸出JSON
}//繼續其他操作
?>


請求就直接 http://頁面域/頁面名.php?key=123&option=return 即可


純手打,如有錯誤請回復

熱點內容
學習c語言要背什麼 發布:2024-11-23 23:34:02 瀏覽:40
透視ftp 發布:2024-11-23 22:39:55 瀏覽:342
平板配置好點的有哪些 發布:2024-11-23 22:32:09 瀏覽:657
巧影商店伺服器怎麼樣 發布:2024-11-23 22:06:15 瀏覽:779
雲伺服器網oppo 發布:2024-11-23 22:06:11 瀏覽:818
love281解壓密碼 發布:2024-11-23 22:00:39 瀏覽:163
通過伺服器搭建多個網站 發布:2024-11-23 21:57:57 瀏覽:249
漵浦雲伺服器 發布:2024-11-23 21:53:43 瀏覽:238
繽智先鋒版配置有哪些 發布:2024-11-23 21:28:04 瀏覽:887
4b存儲器多少錢 發布:2024-11-23 21:23:49 瀏覽:137