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 相关文章推荐
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 PHP
php 删除无限级目录与文件代码共享
Nov 22 PHP
destoon文章模块调用企业会员资料的方法
Aug 22 PHP
WordPress中获取所使用的模板的页面ID的简单方法
Dec 31 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
yii2安装详细流程
May 23 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
Oct 24 PHP
PHP+mysql实现的三级联动菜单功能示例
Feb 15 PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
Oct 15 PHP
PHP基于openssl实现非对称加密代码实例
Jun 19 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实现ping
2006/10/09 PHP
怎样去阅读一份php源代码
2009/08/21 PHP
ThinkPHP和UCenter接口冲突的解决方法
2016/07/25 PHP
php下载文件超时时间的设置方法
2016/10/06 PHP
PHP实现登录注册之BootStrap表单功能
2017/09/03 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
javascript 鼠标拖动图标技术
2010/02/07 Javascript
js判断是否为数组的函数: isArray()
2011/10/30 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
JS+Canvas 实现下雨下雪效果
2016/05/18 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
React组件生命周期详解
2017/07/03 Javascript
javascript高级模块化require.js的具体使用方法
2017/10/31 Javascript
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
vue.js使用v-model指令实现的数据双向绑定功能示例
2018/05/22 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
2020/01/02 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
Python Web开发模板引擎优缺点总结
2014/05/06 Python
Python读写txt文本文件的操作方法全解析
2016/06/26 Python
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
python和ruby,我选谁?
2017/09/13 Python
python实现银联支付和支付宝支付接入
2019/05/07 Python
Python3将数据保存为txt文件的方法
2019/09/12 Python
解决python web项目意外关闭,但占用端口的问题
2019/12/17 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
关于解决iframe标签嵌套问题的解决方法
2020/03/04 HTML / CSS
英国家庭和商业健身器材购物网站:Fitness Options
2018/07/05 全球购物
2014年机关植树节活动方案
2014/02/27 职场文书
给校长的建议书
2014/03/12 职场文书
新闻编辑专业自荐信
2014/07/02 职场文书
五月的鲜花活动方案
2014/08/21 职场文书
开展党的群众路线教育实践活动工作总结
2014/11/05 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
大学生社会实践活动总结报告
2015/05/06 职场文书