实时排行榜 php,ThinkPHP-排行榜插件

/**

* 排行榜

*/

class TopListAddons extends SimpleAddons

{

protected $version = '1.0';

protected $author = '李俊红';

protected $info = '排行榜插件';

protected $pluginName = '排行榜插件';

protected $tsVersion = "2.5";

protected $topType = array('topVote'=>'投票排行榜','topSurvey'=>'问卷调查排行榜','topActivity'=>'活动排行榜');

public function getHooksInfo()

{

//给模版调用

$this->apply("toprank","topRank");

}

//排行榜列表

public function topRank(){

$data = model('AddonData')->lget('top_list');

$v = array('topname'=>$data['open']);

//投票topVote

if(array_key_exists('topVote',array_flip($v['topname']))){

if (($vote =S('TOP_VOTE_CACHE')) == FALSE){

$vote = M('Vote')->order('vote_num DESC')->limit(10)->select();

S('TOP_VOTE_CACHE',$vote,100);

}

$this->assign('vote',1);

$this->assign('topvote',$vote);

}

//问卷调查topSurvey

if (array_key_exists('topSurvey',array_flip($v['topname']))){

if (($survey=S('TOP_SURVEY_CACHE')) == FALSE){

$survey = M('Survey')->order('join_num DESC')->limit(10)->select();

S('TOP_SURVEY_CACHE',$survey,110);

}

$this->assign('survey',1);

$this->assign('topsurvey',$survey);

}

//活动topActivity

if (array_key_exists('topActivity',array_flip($v['topname']))){

if (($activity=S('TOP_ACTIVITY_CACHE')) == FALSE){

$activity = M('Event')->order('joinCount DESC')->limit(10)->select();

S('TOP_ACTIVITY_CACHE',$activity,120);

}

$this->assign('activity',1);

$this->assign('topactivity',$activity);

}

$this->display('toprank');

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ThinkPHP6 的插件功能可以通过以下步骤实现: 1. 创建一个名为 `plugin` 的文件夹,用于存放所有的插件。 2. 在 `composer.json` 文件中添加以下代码,用于加载插件: ``` "autoload": { "psr-4": { "app\\plugin\\": "plugin/" } }, ``` 这样,当调用 `app\plugin\` 命名空间下的类时,Composer 会自动从 `plugin/` 目录下加载对应的文件。 3. 在 `config/app.php` 文件中添加以下代码,用于启用插件: ``` 'autoload' => [ 'plugin' => [ 'hello-world' => true, // 启用 hello-world 插件 ], ], ``` 这里以 `hello-world` 插件为例,将其启用。 4. 在 `plugin` 文件夹下创建 `hello-world` 文件夹,并在其中创建 `composer.json` 文件,用于定义插件的依赖关系和命名空间。例如: ``` { "name": "hello-world/hello-world", "description": "A simple hello world plugin for ThinkPHP6", "type": "thinkphp-plugin", "autoload": { "psr-4": { "hello\\world\\": "src/" } }, "require": {} } ``` 这里定义了 `hello-world` 插件的名称、描述、类型、自动加载规则和依赖关系。 5. 在 `hello-world` 文件夹下创建 `src` 文件夹,并在其中创建 `HelloWorld.php` 文件,实现插件的功能。例如: ``` <?php namespace hello\world; class HelloWorld { public function sayHello() { echo 'Hello, world!'; } } ``` 这里定义了一个 `HelloWorld` 类,其中包含一个 `sayHello` 方法,用于输出 `Hello, world!`。 6. 在需要使用插件的地方,可以使用以下代码来调用插件的功能: ``` $helloWorld = new \hello\world\HelloWorld(); $helloWorld->sayHello(); ``` 这里实例化了 `HelloWorld` 类,并调用了其中的 `sayHello` 方法,输出了 `Hello, world!`。 通过以上步骤,就可以在 ThinkPHP6 中实现插件库的功能了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值