thinkPHP自定义类实现方法详解

2025-05-29 0 19

本文实例讲述了thinkPHP自定义类实现方法。分享给大家供大家参考,具体如下:

1.通过Model调用

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21
<?php

/**

* 积分模型 api接口

*/

class ApiModel{

private $url = 'http://js.yunlutong.com/Customer/Interface';

public function test() {

$post_data['action'] = 'sadf';

$post_data['callback'] = '?';

$res = request_post($this->url, $post_data);

$firstChar = substr($res,0,1);

if ($firstChar =='?') {

$res = substr($res,2);

$res = substr($res,0,strlen($res)-1);

} elseif($firstChar == '(') {

$res = substr($res,1);

$res = substr($res,0,strlen($res)-1);

}

dump(json_decode($res,true));

}

}

没有继承Model,否则会因为表不存在而报错。

调用,

?

1

2
$Api = D('Api');

$Api->test();

调用确实方便,但是总感觉有点不合理。这个D毕竟是操作数据库的。

2.通过引入类实现,把类放到ORG下

thinkPHP自定义类实现方法详解

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
<?php

class Integral{

private $url = 'http://js.yunlutong.com/Customer/Interface';

public function test() {

$post_data['action'] = 'sadf';

$post_data['callback'] = '?';

$res = request_post($this->url, $post_data);

$firstChar = substr($res,0,1);

if ($firstChar =='?') {

$res = substr($res,2);

$res = substr($res,0,strlen($res)-1);

} elseif($firstChar == '(') {

$res = substr($res,1);

$res = substr($res,0,strlen($res)-1);

}

dump($res);

dump(json_decode($res,true));

}

}

?>

调用

?

1

2

3
import("@.ORG.Api.Integral");

$integralApi = new Integral();

$integralApi->test();

配置一下,自动加载

?

1
'APP_AUTOLOAD_PATH' => '@.ORG,@.ORG.Api',

这样调用就方便了不管Api文件夹下有多少类,都会自动加载,不需要单个引用import("@.ORG.Api.Integral")了。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 thinkPHP自定义类实现方法详解 https://www.kuaiidc.com/96213.html

相关文章

发表评论
暂无评论