详解PHP如何更好的利用PHPstorm的自动提示
2017-08-18 11:17
645 查看
说明
写了一段时间的java之后,特别不习惯PHP本身的弱类型方式,在写代码的时候总觉得不怎么放心,特别本身PHP又是弱类型的语言,所以在编码的时候,很多时候是没有代码提示的。
一个一般例子
class Data { public $name; public $gender; public $age; public function __construct($name,$gender,$age) { $this->name = $name; $this->gender = $gender; $this->age = $age; } } class Test { public function run() { $data = [ new Data('张三','男',18), new Data('李四','男',14), new Data('王五','男',17), new Data('大姨妈','女',23), ]; } private function eachData($data) { foreach($data as $item) { echo $item->name.'=>'.$item->gender.'=>'.$item->age."\n"; } } } (new Test)->run();
以上例子来看,一般来说其实也是不存在什么问题的,但是在编写
cho $item->name.'=>'.$item->sex.'=>'.$item->age."\n";
这段代码的时候,在调用属性的时候是没有自动提示的,那么数据量大的时候需要往上翻然后进行copy或者编写下来,降低编码速度,而且有时候心里还没谱,怕写错。
以下是我写的一个完整的利用注释和本身PHP特性的例子:
class Data { public $name; public $gender; public $age; public function __construct($name,$gender,$age) { $this->name = $name; $this->sex = $gender; $this->age = $age; } } class Test { public function run() { $data = [ new Data('张三','男',18), new Data('李四','男',14), new Data('王五','男',17), new Data('大姨妈','女',23), ]; } /** * 遍历输出数据 * @param array $data */ private function eachData($data) { foreach($data as $item) { if($item instanceof Data) { echo $item->name.'=>'.$item->gender.'=>'.$item->age."\n"; } } } } (new Test)->run();
这里主要的是加了一个if判断,判断数据类型是否是Data的一个具体实例;
在这个地方,PHPstorm会根据这个判断在做$item属性调用的时候会有自动提示,非常的方便。
思考
从这里得到的一些思考,那就是我们在编写程序的时候可以更好的考虑严谨性,从上面的例子来看,这样子做了,再加一些错误处理机制,能更好的保证数据的安全性和完整性,不仅仅是编辑器提示的方便。
后续再做代码检查和跟踪的时候,将也是一件非常方便的事情,而且业务逻辑也更清晰。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- 利用PHP如何写APP接口详解
- 利用PHP+JS实现搜索自动提示(实例)
- 利用php + Laravel如何实现部署自动化详解
- 利用PHP如何写APP接口详解
- PHP 为什么要使用命名空间,命名空间的作用是什么,如何更好的使用命名空间【详解】
- 关于如何利用suggest添加Solr中自动提示功能的简介
- 利用PHP+JS实现搜索自动提示(实例)
- 如何实现android蓝牙开发 自动配对连接,并不弹出提示框
- ActiveMQ配置详解之如何配置自动重新连接
- 为了提升自己,为了更好的胜任景城网的编辑工作,学习PS,可是每次打开Photoshop的时候总让我注册 ps总提示注册 如何不注册
- android端升级下载后如何自动安装并且有提示安装完成或打开,然后点击打开
- python中利用await关键字如何等待Future对象完成详解
- 利用PHP获取汉字首字母并且分组排序详解
- 如何利用php+sql建立留言板
- phpStorm支持CodeIgniter代码提示/自动完成
- 利用spring boot如何快速启动一个web项目详解
- hotcss.js如何利用sass自动生成css,快速让px转换成rem
- PHP错误提示的关闭方法详解
- 如何利用PHP自定义错误处理器处理出错信息?
- PHP 如何利用phpexcel导入数据库