php如何开发API接口

php如何开发API接口,第1张

进入php源程序目录中的ext目录中,这里存放着各个扩展模块的困首源代码,选信凯择你需要的模块,比如curl模块:cd curl

执行phpize生成编译文件,phpize在PHP安装目录的bin目录下

/usr/local/php5/bin/phpize

运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and

the $PHP_AUTOCONF

environment variable is set correctly and then rerun this

script.,需要安装autoconf:

yum install autoconf(RedHat或者CentOS)、apt-get install

autoconf(Ubuntu Linux)

/usr/local/php5/bin/php -v

执行这个命令时,php会去检查配置文件是否正确,如果有配置错误,汪坦数

这里会报错,可以根据错误信息去排查!

API,是应用程序接口的英文缩写。通常API就是一些具体的函数。比如一个自定义函数:

function test(){

echo ‘hello world’

}

就可以叫做api。

api既可以是单个的函数,也可以是封装在类里的方法,当然它们也是程序代码。

开发一个api的流程可以很简单,也可以很复杂,视具体的编程任务而决定,并没有特定的规则。

比如,你需要为自己建立一个常用的函数库,命名为my.lib.php

然后把你自己编写的自定义函数,全部写在这个文件里面,那么,你就拥有了自己的api。开发的时候,只需要引入my.lib.php,你就可以调用自己的api了。这是一个比较简单的例子。

稍微复杂一点的,你可以把函数封装在类里面,方便继承和重弯明带用,还可以根据函数名称做一些程序设计,这个一句话说不埋芦清楚,槐团给一个简单的例子吧:

class mylib{

function showmy(){

echo ‘这是我的一个类方法’

}

}

调用的时候,先要实例化类,然后再调用方法。

你看看这段代码 ,如果想写Ucenter接口很方便

<?php

/**

* api控制器基类

*/

class ApiApp extends ECBaseApp

{

function _init_visitor()

{

$this->visitor =&env('visitor', new ApiVisitor())

}

/**

* 执行登陆 *** 作

* 这个函数要跟 frontend.base.php 中的 _do_login 保持一致

*/

function _do_login($user_id)

{

$mod_user =&m('member')

$user_info = $mod_user->get(array(

'conditions'=>"user_id = '{$user_id}'",

'join' =>'has_store',

'fields'=>'user_id, user_name, reg_time, last_login, last_ip, store_id'租蔽迅,

))

/* 店铺ID */

$my_store = empty($user_info['store_id']) ? 0 : $user_info['store_id']

/* 保证基础数据整洁 */

unset($user_info['store_id'])

/* 分派身份 */

$this->visitor->assign($user_info)

/并橘* 更新用户登录信息 */

$mod_user->弊此edit("user_id = '{$user_id}'", "last_login = '" . gmtime() . "', last_ip = '" . real_ip() . "', logins = logins + 1")

/* 更新购物车中的数据 */

$mod_cart =&m('cart')

$mod_cart->edit("(user_id = '{$user_id}' OR session_id = '" . SESS_ID . "') AND store_id <>'{$my_store}'", array(

'user_id'=>$user_id,

'session_id' =>SESS_ID,

))

}

/**

* 执行退出 *** 作

*/

function _do_logout()

{

$this->visitor->logout()

}

}

/**

*api访问者

*/

class ApiVisitor extends BaseVisitor

{

var $_info_key = 'user_info'

}

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8240683.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存