2020终极版PhpStorm:全面支持PHP8,静态分析器
PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。
这个主要版本包括对PHP 8,静态分析器PHPStan和Psalm,Xdebug 3,Tailwind CSS,通过Code With Me进行协作开发的全面支持。
PhpStorm 2020.3现已上市!
下载PHPSTORM 2020.3
阅读有关所有新功能和重要更新以及大量GIF的详细信息!
- PHP 8:支持所有语言功能,甚至开源的Custom Attributes。
- PHPStan和Psalm可以直接在代码编辑器中或以批处理方式检测问题。
- Xdebug 3具有简化的配置,以及调试器的改进,例如嵌入式监视和交互式提示。
- HTTP客户端现在可以运行Guzzle请求并将请求复制为cURL。
- 协作开发使您可以与他人共享您的项目,并实时一起进行。
- 在编辑器中,您现在可以使用Mermaid.js渲染图和图表,更轻松地拆分选项卡,并即时预览文件而无需打开它们。
- 各种各样的IDE增强功能:“无处不在的搜索”有了一些新的举措。IDE视觉主题与操作系统保持同步。将PhpStorm设置为打开文件的默认应用程序。
- 现在支持Git stage作为变更列表的替代。
- 数据库工具为MongoDB和新的数据提取器带来了对SQL的支持。
- Tailwind CSS,为Tailwind类提供编码帮助。
PHP 8
PhpStorm 2020.3支持所有最新的语言更改。以下是可用的功能以及如何在IDE中使用它。
从状态栏设置语言级别
现在,状态栏始终显示项目的当前语言级别。从那里进行切换,以利用PHP 8的新功能。
如果切换未激活,则意味着项目的composer.json中的语言版本受到限制,您应该在该文件中对其进行调整。
命名参数
在PHP 8中,可以通过指定参数名称来传递函数和方法参数。现在,调用已自行记录,并且可选参数已成为真正的可选参数,因为您可以忽略它们。
使用添加名称标识符快速修复将位置参数转换为命名参数:
如果参数包含错字或没有匹配的参数,则PhpStorm会突出显示这些参数:
如果传递的值与参数的默认值相同,则PhpStorm会将参数变灰,您可以通过快速修复将其安全删除:
开发人员经常使用选项数组来传递一组参数。使用命名参数,这不是必需的,因为您可以指定所需的参数。另外,与数组元素不同,以这种方式传递的参数是类型安全的。
属性
属性(又名注解)是一种新的结构化方式,用于在PHP中指定元数据。它们替换了PHPDoc注释。
要创建属性,请声明一个普通的类并#[Attribute]在其顶部添加一个标记。PhpStorm在此处提供了所有预期的功能,包括突出显示,代码完成,查找用法,重构等。
PHP本身仅在调用时才验证属性ReflectionAttribute::newInstance()。在此之前,如果不通过反射访问,则将完全忽略属性,以避免必须加载类和创建对象。
使用PhpStorm,无需运行反射API即可查看属性是否有效。强制执行以下规则:
- 指定的类实际上可以是一个属性。
- 此属性仅适用于允许的目标:类,属性,方法,参数,函数或类常量。
- 仅当具有Attribute::IS_REPEATABLE标志时,才重复此属性。
这是与Symfony一起使用的属性:
PhpStorm中的自定义PHP 8属性
PhpStorm 2020.3中有几个可用的属性,它们位于\\JetBrains\\PhpStorm\\名称空间下。
立即将它们添加到您的代码库中,以获得更好的代码完成和更多的检查。
#[ArrayShape]
当定义一个实类时,此属性对于使用简单的数据结构或类对象数组很有用。
语法如下:
type可以被指定为一个字符串或作为在FQN字符串或形式的类引用::class常量。
这是定义形状的数组。将其提取为常量,然后在其适用的属性内重用:
const MY_ARRAY_SHAPE = [] ;
#[ ArrayShape (MY_ARRAY_SHAPE )]
在PhpStorm中,我们已经注释了一些内部PHP函数,例如parse_url()with #[ArrayShape],因此您可以立即受益于这些属性。
幸运的是,单行属性的语法是向后兼容的。如果将#[ArrayShape]属性添加到PHP 7.*项目的单独一行中,则PHP解释器会将其解析为注释行。但是,多行属性对于8之前的PHP版本并不安全。
与PHP解释器不同,PhpStorm仍然会分析属性!因此,即使您的项目在PHP 7.4或更低版本上运行,您仍然可以从添加#[ArrayShape]属性中受益。
点击“了解更多”获取更多详细更新内容
如何利用vscode高效开发PHP
用最近使用PhpStorm的激活码到期了,就琢磨着换一个编辑器。vscode评价挺好的而且轻量级免费开源,所以决定vscode开发PHP。
- vscode介绍
- vscode常用的PHP插件
- 安装插件
- vscode 配置自己习惯的快捷键
1.vscode介绍
Visual Studio Code简称为VS Code习惯称为vscode,是微软公司的一款跨平台开源免费,轻量级但功能强大的源代码编辑器。
2.vscode常用PHP的几个插件
3.安装插件
在插件商店中搜索上面提供的几个vscode插件,点击”安装“,等待插件安装完成,这个过程会很快。安装PHP Debug 插件会稍微麻烦些,不用的小伙伴也可以跳过。也可以参考我的另外一篇文章
打开vscode插件商店并安装插件
vscode已安装插件列表
插件安装完成就可以开发是开发了,下图是我测试的截图
4.vscode 配置自己习惯的快捷键
配置自己习惯的快捷键这里我就不多说,也可以参考我另一篇文章
也可以自行网上搜索。小伙伴有更好的vscode php开发配置欢迎留言。
python开发工具PyCharm最新版本新增功能介绍
PyCharmV2022.1支持自定义包存储库的身份验证、改进的 TypedDict 和 Docker 的新服务UI。
配置基本 HTTP 身份验证以访问自定义包存储库并通过 PyCharm 轻松管理依赖项,而无需切换到终端进行手动安装。转到Python Packages工具窗口,单击齿轮图标,单击对话窗口中的加号,添加存储库 URL 并选择Basic HTTP选项以输入所需的凭据。
新的通知工具窗口已取代旧的事件日志工具窗口。因此,有用的建议和相关通知以更简单的方式组织起来,以确保不会错过任何重要的事情。
通过自定义各种对象的显示格式,使调试会话更快更容易,尤其是在处理大型或多属性对象时。
进一步的改进:
- 在 LightEdit 模式下重新格式化代码。转到 代码|执行此操作,在主菜单中或按 重新格式化代码Ctrl+Alt+L。
- 当没有找到 Python 3 可执行文件时,PyCharm 现在可以在 macOS 上安装 Python 3。
当使用Run Cell 和 Insert Above时,刚刚添加的单元格现在将默认为 Edit 模式,可以立即开始编写代码。编辑和运行当前单元格时也是如此:执行后它将保持在编辑模式。
以前,当您在命令模式下复制和粘贴单元格时,无论是为了重新组织您的笔记本还是出于任何其他原因,只有单元格本身被粘贴到新位置,而不是其输出。这种行为在 PyCharm 2022.1 中发生了变化。
进一步的改进:
- 支持 Jupyter 运行时代码完成。
PyCharm 通过为可用键提供代码完成,可以轻松地将dict文字用作函数的参数或从需要 TypedDict 的类中实例化对象。
当在需要 TypedDict 的地方使用作为文字或使用dict构造函数创建的字典时,PyCharm 会显示每个键的错误消息,指向错误、缺失或不期望的单个值。
使用包含执行命令指令的 Markdown 文件(例如 README 文件)时,您可以使用装订线中的运行图标直接从文件中运行这些命令。
使用 Markdown 块中的新复制代码片段,您只需单击一下即可轻松地将内容复制到剪贴板。
进一步的改进:
- 使用更新的 Markdown 编辑器浮动工具栏选择标题、创建列表等。
- Join Lines操作现在还包括嵌套 的if语句。
使用 Docker 会很快变得混乱。我们在服务工具窗口中对 Docker 的 UI 进行了重大修改,让您可以更清晰地控制容器、图像、网络和卷。
添加了对 Docker Registry HTTP API V2 的支持,以便与 Docker 1.6+ 一起使用。可以创建简单或受密码保护的 Docker V2 注册表并执行所有常用操作,例如查看、推送和拉取映像。
如果 kubectl 不在标准位置,可以手动配置路径。要设置自定义路径,请转到 设置/首选项 | 构建、执行、部署 | Kubernetes | kubectl 可执行文件的路径。
进一步的改进:
- Kubernetes:Pod 的端口转发功能现在可用。
- Kubernetes: “服务”视图 中的所有资源都有一个新的“描述资源”操作。
- Kubernetes:现在可以从编辑器选项卡中修改从集群加载的资源。
由于对 React 的内置支持,所有关键功能应该已经在您的 Next.js 项目中运行。PhpStorm最新版本 V2022.1 增加了对一些特定于框架的东西的支持,例如pages。PyCharm 现在将解析链接组件的href属性以及表单 和其他标签中使用的路径。代码完成、导航和重构也将起作用。
PyCharm 现在与 JavaScript 工具管理器 Volta 进行了适当的集成,并将自动识别使用 Volta 安装的 Yarn 和 npm。
现在可以像在关系数据库中一样轻松地编辑 MongoDB 集合中的结果,也可以编辑通过.find()获得的结果集。即使在.find() 之后执行修改结果的游标方法(例如sort()或limit()),这也有效。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。