2009-12-15 53 views
5

我想用PHP開發一個簡單的API。使用php創建API

我的功能是,如果有人輸入了一些必需的值,那麼他們將從我的網站旁邊的算法得到計算結果。

我從哪裏可以開始。 ,也沒有得到任何使用PHP的API示例代碼。

+3

你想讓人們連接到你的API? – 2009-12-15 09:39:40

+0

意味着你在談論方法嗎?獲取或POST? – Avinash 2009-12-15 10:42:03

回答

2

一個API通常是你將創建允許其他開發人員能夠更輕鬆地訪問你的程序。

但是,通過你正在做的事情的聲音,你似乎只需要做一個簡單的頁面來執行一些計算,並且API可能不需要你這樣做。

我建議先學習一些一般的PHP tutorials以及processing forms的一些。

13

這聽起來像你想創建一個Web服務,其他人可以連接到,發送答案和檢索結果。

如果是這種情況,您有三種選擇,SOAP,XML-RPC和REST。如果它是一個簡單的API,那麼SOAP(可能是XML-RPC)將會過度消耗 - 你不想創建一個WSDL文件,安裝一個SOAP服務器庫(儘管Zend_Soap足夠體面)。另一方面,REST將允許任何人輕鬆使用您的API。

讓我們來看一個例子,說你要提供一個簡單的「和」服務(即添加幾個數字),你可以有這樣的URI方案:

http://example.com/sum

總結數字5,8和9個Web服務用戶將一個SimPy執行HTTP GET來

http://example.com/sum/5/8/9

讓我們假設一下,如果求和實際上是一個非常昂貴的計算任務,通過使用RES T和GET,你可以利用HTTP緩存,這樣當有人發送相同的參數進行計算時,你的服務器不會一直被擊中。

如果您的Web服務的資源不是無副作用(即它改變了數據庫中的某些內容),您應該使用PUT,POST或DELETE(PUT更新,POST創建和DELETE刪除)爲HTTP規範聲明GETs不應該有副作用。同樣,如果您收到錯誤或網絡連接超時,則PUT和DELETE應安全地重複。

有一個很好的談話(視頻和幻燈片)在這兒休息:http://www.parleys.com/display/PARLEYS/Home#talk=31817742

+0

感謝提供的信息 但我對此很新。 我沒有得到這個解決方案.... – Avinash 2009-12-15 10:42:44

+1

REST是非常簡單的,只需讓你的PHP文件看看哪些值作爲URI的一部分傳遞,提取它們,做計算並輸出它 - 完成工作。 – philjohn 2009-12-15 14:00:17

10

API是一些方法,可以從另一個應用程序調用。 'philjohn'聲明簡單的一個API是使用REST技術。

這是使用PHP創建API的簡單的例子,讓我們說,你創建一個名爲「和」使用此URL新API:http://localhost/v1/api.php?method=sum&var1=4&var2=5

在文件API

。PHP你可以這樣編碼:

<?php 
if($_GET['method'] == 'sum') 
{ 
return $_GET['var1'] + $_GET['var2']; 
} 

這只是非常簡單的如何創建API。高級API將涉及變量檢查,連接到數據庫,使用xml或json格式輸出等。

1

最好和最簡單的方法是使用框架和工具。

我使用API​​ATO(https://github.com/apiato/apiato)這是一個完美的框架,用PHP和Laravel構建可擴展和可測試的以API爲中心的應用程序。

檢查出來。