thinkPHP自定义类实现方法详解


Posted in PHP onNovember 30, 2016

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

1.通过Model调用

<?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,否则会因为表不存在而报错。

调用,

$Api = D('Api');
$Api->test();

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

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

thinkPHP自定义类实现方法详解

<?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));
  }
}
?>

调用

import("@.ORG.Api.Integral");
$integralApi = new Integral();
$integralApi->test();

配置一下,自动加载

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

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

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

PHP 相关文章推荐
PHP用户指南-cookies部分
Oct 09 PHP
服务器端解压缩zip的脚本
Dec 22 PHP
php jquery 实现新闻标签分类与无刷新分页
Dec 18 PHP
AMFPHP php远程调用(RPC, Remote Procedure Call)工具 快速入门教程
May 10 PHP
php新建文件自动编号的思路与实现
Jun 27 PHP
简单的php缓存类分享     php缓存机制
Jan 22 PHP
使用XHGui来测试PHP性能的教程
Jul 03 PHP
PHP中文竖排转换实现方法
Oct 23 PHP
yii分页组件用法实例分析
Dec 28 PHP
Laravel5.5新特性之友好报错以及展示详解
Aug 13 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
Jun 13 PHP
php获取小程序码的实现代码(B类接口)
Jun 13 PHP
php版阿里大于(阿里大鱼)短信发送实例详解
Nov 30 #PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
Nov 30 #PHP
PHP实现的同步推荐操作API接口案例分析
Nov 30 #PHP
PHP实现多图上传(结合uploadify插件)思路分析
Nov 30 #PHP
PHP获取指定日期是星期几的实现方法
Nov 30 #PHP
php根据年月获取当月天数及日期数组的方法
Nov 30 #PHP
详解PHP处理密码的几种方式
Nov 30 #PHP
You might like
php中3种方法统计字符串中每种字符的个数并排序
2012/08/27 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
微信公众号模板消息群发php代码示例
2016/12/29 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
2019/10/21 PHP
Laravel统一错误处理为JSON的方法介绍
2020/10/18 PHP
js 编程笔记 无名函数
2011/06/28 Javascript
ExtJs Excel导出并下载IIS服务器端遇到的问题
2011/09/16 Javascript
jQuery点击tr实现checkbox选中的方法
2013/03/19 Javascript
使用jQuery UI的tooltip函数修饰title属性的气泡悬浮框
2013/06/24 Javascript
ff下JQuery无法监听input的keyup事件的解决方法
2013/12/12 Javascript
javascript中字符串的定义示例代码
2013/12/19 Javascript
js实现键盘Enter键提交表单的方法
2015/05/27 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
特殊日期提示功能的实现方法
2016/06/16 Javascript
javascript js 操作数组 增删改查的简单实现
2016/06/20 Javascript
jquery实用技巧之输入框提示语句
2016/07/28 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
浅谈AngularJS中使用$resource(已更新)
2017/09/14 Javascript
Vue中对拿到的数据进行A-Z排序的实例
2018/09/25 Javascript
基于axios 的responseType类型的设置方法
2019/10/29 Javascript
详解Webpack抽离第三方类库以及common解决方案
2020/03/30 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
2020/09/01 Javascript
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
[06:49]2018DOTA2国际邀请赛寻真——VirtusPro傲视群雄
2018/08/12 DOTA
尝试用最短的Python代码来实现服务器和代理服务器
2016/06/23 Python
python中OrderedDict的使用方法详解
2017/05/05 Python
Python实现PS图像调整之对比度调整功能示例
2018/01/26 Python
Python3几个常见问题的处理方法
2019/02/26 Python
通用自荐信范文
2014/03/14 职场文书
副处级干部考察材料
2014/05/17 职场文书
企业宣传策划方案
2014/05/29 职场文书
我的梦想演讲稿500字
2014/08/21 职场文书
超级礼物观后感
2015/06/15 职场文书
新闻发布会新闻稿
2015/07/17 职场文书
用Python实现屏幕截图详解
2022/01/22 Python
Golang 入门 之url 包
2022/05/04 Golang