Visual Studio Code(vscode)已经成为了一个成熟的跨平台跨语言开发IDE,PHP开发者也可以尝试使用vscode管理和开发自己的项目。
PHP开发者使用VSCODE可以使用的最简单扩展配置如下:
1. composer,没有composer的IDE开发PHP是没有灵魂的,注意安装Composer的时候请勾选开发模式,否则VSCODE无法执行命令等,安装之后注意在setting.json中配置以下节点:
{ "composer.executablePath":"c:\\composer\\composer.bat", "composer.workingPath": "D:\\centos\\myprograms", }
2. php的代码格式化和自适应插件phpfmt - PHP formatter ,PHP IntelliSense ,在这两个插件的配合下,PHP开发者体验会同时拥有Zend Studio和Sublime的良好体验,当然也是需要配置PHP可执行路径的,否则没有相关API的支持安装了也是白搭。
{ "php.validate.executablePath": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", "phpfmt.php_bin": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", "php.executablePath": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", }
3. 以上环节安装完毕后,给方法打注释是很不方便的,不能快速生成方法名、参数名等,需要再安装
安装完成后可以自定义一些注释参数
"php-docblocker.extra": [ "@description", "@example", "@author daneas", "@since $CURRENT_YEAR-$CURRENT_MONTH-$CURRENT_DATE" ]
板砖实践认为,以上3个重要插件即可满足PHP的日常主要开发了,当然项目中需要引用的扩展还需要开发者自行补充。
在composer的使用中大家可能会遇到的几个问题有:
1. 镜像问题,当然composer的中文镜像有些时候是有作用的,但是不稳定,所以推荐使用阿里云镜像,可以解决例如“Expected one of: 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['”这类问题
"repositories": { "packagist": { "type": "composer", "url": "https://mirrors.aliyun.com/composer/" } },
2. composer.phar文件不存在的问题,一般来说你需要检查问题目录,删除composer.bat文件,使用安装默认位置的文件。
希望以上两点能够帮助到相关问题的朋友,原文来自我的个人博客https://www.dmake.cn/article/43。
完整的setting.json配置 { "php.validate.executablePath": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", "phpfmt.php_bin": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", "php.executablePath": "D:\\phpstudy_pro\\Extensions\\php\\php7.3.4nts_p\\php.exe", "editor.wordWrap": "on", "breadcrumbs.enabled": true, "window.zoomLevel": 0, "composer.executablePath":"c:\\composer\\composer.bat", "composer.workingPath": "D:\\centos\\myprograms", "composer.enabled": true, "editor.fontSize": 15, "workbench.activityBar.visible": true, "php-docblocker.extra": [ "@author [email protected]", "@at $CURRENT_YEAR-$CURRENT_MONTH-$CURRENT_DATE" ] }
完整的PHP开发环境,包含了github,代码自动补全,代码格式化,代码注释和图标优化。