phpStorm对thinkphp的Facade支持不友好无法追踪显示类的问题

先感慨几句,以前看thinkphp手册主要看的都是模型,视图,路由,最近维护自己的一个项目开始看手册的架构了,把架构里面的内容读了几遍的几遍,感觉对tp的理解又深了一点。也体会到了tp的良苦用心!!都不容易呀!好了言归正传

thinkPHP中的门面(Facade)自我感觉算是架构里面比较简单、最容易分清楚,也是最实用的一种了。

官方的解释是

说的直白一点,Facade功能可以让类无需实例化而直接进行静态方式调用。

ok在这里我就不多说 public 和public static的区别了, 简单理解一个就是外部和内部都可以用 -> 调用,另外一种只能自己调用自己的那种self:: , 有了Facade 就可以不用实例化直接进行静态调用(半年前我还真不怎么理解,慢慢的自己就体会到了,5.0的手册就没有提及这个问题)废话有点多了,来例子解决问题

你完全按照官方手册去写,执行什么的都没有问题。
创建一个类方法

<?php
namespace app\common;

class Test
{
    public function hello($name)
    {
        return 'hello,' . $name;
    }
}

在创建一个facade

namespace app\facade;

use think\Facade;

class Test extends Facade
{
    protected static function getFacadeClass()
    {
    	return 'app\common\Test';
    }
}

然后用调用静态方法的方式去调用就行,但是做为强迫症的我来说,在phpStorm中却没有代码提示,这让我很不爽,为啥官方在里面都有提示我写的facade没提示,不公平,这也不利于我去查找我写的东西呀!那还不如我直接写静态的来的爽呢!

百度了好久就找到一个关于这方面的,不具体还是错的,真的是醉了。然后我就在手册里面找,有人提及了,但是说的很含糊,照做了还是不行,然后我就发帖子,一个大神一句话点醒了我,按照大神的方法成功了,贴出大神的回答
!在这里插入图片描述在这里插入图片描述
在这里插入图片描述

看懂了吗??

来拿个实在例子给你说,调用我WechatTool类里面的abc方法。方法很简单,就是注释,在facade中添加一个注释,phpStorm就能识别

在这里插入图片描述

关键就这么一句,

注释的重要性

就是这么一句注释的问题,@method 方法名() static 就这么一句,搞定。好了你可以去试试。看看能不能成。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值