2024 PhpStorm激活,分享几个PhpStorm激活的方案

文章目录

  • PhpStorm 公司简介
  • 我这边使用PhpStorm的理由
  • PhpStorm 2023.3 最新变化
    • AI Assistant 预览阶段结束 正式版
      • 基于 LLM 的代码补全
      • 测试代码生成
      • 编辑器内代码生成
      • 控制台中基于 AI 的错误解释
    • Pest 更新
    • PHP 8.3 支持
      • `#[\Override]` 特性
      • 新的 `json_validate()` 函数
      • 类型化类常量
      • 弃用
    • Symfony 支持
      • _New Project_(新建项目)向导
      • QueryBuilder 中的 Doctrine 查询语言支持
      • 为 Symfony 和 Doctrine 将注解转换为特性
    • 针对 PHP 的其他更新
      • 从项目排除外部库文件的选项
      • 泛型类型的专属样式
      • 折叠多行 PHP 特性的功能
      • 从 PHPDoc 到特性的 PHPUnit 元数据转换
  • 我是如何使用上**PhpStorm**的
    • 官网购买 PhpStorm
    • 教育或者学术许可获取
  • <font color=orange>通过激活码激活,这种方式比较麻烦,但是免费,相对稳定,是我目前在使用的一种方式,详细步骤如下:
    • <font color=orange>Stage 1.下载安装 toolbox-app(全家桶管理工具)
    • <font color=orange>Stage 2 : 下载工具
    • <font color=orange>Stage 3-1 : windows为例
    • <font color=orange>Stage 3-2 : mac为例
    • <font color=orange>常见问题
      • 部分小伙伴 Mac 系统执行脚本遇到如下错误:
        • 解决方法:
    • 执行脚本做了啥?
    • 和收费版区别?
    • One more thing

大家好,欢迎来到 金榜探云手

PhpStorm 公司简介

JetBrains 是一家专注于开发工具的软件公司,总部位于捷克。他们以提供强大的集成开发环境(IDE)而闻名,如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工具被广泛用于 Java、Python、JavaScript 等编程语言的开发,因其智能化和高效性而备受开发者喜爱。

我这边使用PhpStorm的理由

PhpStorm 2023.3 最新变化

此重大更新的亮点包括:

  • AI Assistant 预览阶段结束
  • Pest 支持
  • PHP 8.3 支持
  • 改进的 Symfony 支持
  • UI 的体验改进

AI Assistant 预览阶段结束 正式版

JetBrains 的 AI Assistant 现已全面推出,搭载大量新功能和改进,助力提高您在 JetBrains IDE 中的工作效率。

基于 LLM 的代码补全

基于 LLM 的代码补全

AI Assistant 现在可以为您生成多行代码块。 在新行开始输入,如果有 LLM 建议,就会出现一个灰显的代码段。 按 Tab 接受建议。

目前,此类建议可在类上下文或函数定义内使用。

测试代码生成

测试代码生成

AI Assistant 还可以为类方法生成测试。 将文本光标置于您希望通过单元测试覆盖的类方法上,按 Alt+Enter,选择 AI Assistant,然后选择 Generate Unit Tests(生成单元测试)。

编辑器内代码生成

编辑器内代码生成

以前,您可以使用 AI 聊天生成代码段。 新增的 AI Assistant | Generate code…(AI Assistant | 生成代码…)操作可以直接在编辑器中打开提示框。 您可以输入要生成的代码的描述。 随后,AI Assistant 将提供建议,您可以接受部分或全部建议。

控制台中基于 AI 的错误解释

控制台中基于 AI 的错误解释

有时,执行 PHP 脚本或运行配置或者运行 Composer 操作时,作业会由于某种原因失败。 AI Assistant 可以帮助您确定问题的根本原因。 点击堆栈跟踪或错误消息中的 Explain with AI(使用 AI 解释)按钮即可获取 AI 生成的解释。

订阅 JetBrains AI Service,在 PhpStorm 中以补充功能的形式使用 AI Assistant。

Pest 更新

PhpStorm now supports the Pest test framework out of the box. We recently agreed with the original author of the Pest plugin to take over its development and bundle it in PhpStorm. You can read the details in our recent blog post.

Pest 测试

就像 PHPUnit 测试一样,Pest 测试现在可以直接从 PhpStorm 运行。 将文本光标放入测试并触发运行窗口时,将为特定测试创建运行配置。 您可以将文本光标置于文件中,而不是具体测试中,以触发该文件中的所有测试。

断言

借助新的 Pest 支持,您可以在 $this 上调用函数或方法来编写断言。 这还改进了测试函数中的自动补全,让您可以在输入时查看可用断言。

自定义期望

在 Pest 中,您可以编写自定义期望来减少测试中的样板检查。 PhpStorm 可以帮助您找到自定义期望的用法并帮助您重命名。

PHP 8.3 支持

PhpStorm 2023.3 完全支持 PHP 8.3。 IDE 中的大部分更改都将有机集成到您的 PhpStorm 工作流中,几乎不会引起波动,因此我们只会提及您需要了解的新功能。

Override 特性

#[\Override] 特性

PHP 8.3 引入了新的 #[\Override] 特性。 重写方法时,它可以明确显示您的意图。 PHP 引擎能够检查标有 #[\Override] 的方法是否实际上重写了父方法,如果未重写,则抛出异常。 PhpStorm 2023.3 会提前发出有关此类情况的警告。

添加 Override 特性建议

PhpStorm 还建议在适用时添加 #[\Override] 特性。

json_validate() 函数 json_validate() 函数

新的 json_validate() 函数

PHP 8.3 向标准库添加了新的 json_validate() 函数。 此前,验证字符串是否为有效 JSON 的唯一方式是对其进行解码并检测是否抛出错误。 PhpStorm 可以检测这些模式,并建议通过 json_validate() 函数调用替换。 与解码字符串相比,它使用的内存更少,因此有助于确认输入是否为有效 JSON。

类型化类常量

类型化类常量

在 PHP 8.3 中,您可以声明类常量的类型。 除 voidcallablenever 之外的所有类型声明都可以使用。

对于类型化类常量,PhpStorm 提供:

  • 插入适当类型的建议
  • 类型提示补全
  • 与默认值类型的兼容性检查
  • 重写子类中的常量时进行类型重新声明检查

弃用 弃用

弃用

PHP 8.3 弃用了一定内容,PhpStorm 为您提供了相应的检查来发现它们。

Symfony 支持

PhpStorm 2023.3 为 Symfony 开发者带来了多项改进。

New Project(新建项目)向导

New Project(新建项目)向导

适用于 Symfony 的新内置项目初始化程序允许您直接从_欢迎_屏幕新建具有所需类型和版本的 Symfony 项目。

QueryBuilder 中的 Doctrine 查询语言支持

QueryBuilder 中的 Doctrine 查询语言支持

现在,您可以在 QueryBuilder 方法调用中享受对 DQL 的完整 IDE 支持。 功能包括高亮显示、字段补全、目标模型类解析等。

为 Symfony 和 Doctrine 将注解转换为特性

为 Symfony 和 Doctrine 将注解转换为特性

Following the introduction of attributes in PHP 8.0, Doctrine annotations are being deprecated and will soon be removed. 为了帮助您进行切换,PhpStorm 2023.3 包含了将 Doctrine 注解转换为特性的功能。

PhpStorm 还支持将 Symfony 注解转换为其对应特性,例如 #[Required]#[Route] 等。

针对 PHP 的其他更新

从项目排除外部库文件的选项

从项目排除外部库文件的选项

我们添加了排除来自索引库的目录的实验性新功能。 从项目中排除此类文件有助于避免多重定义问题和提高索引性能。

泛型类型的专属样式

泛型类型的专属样式

我们持续改进泛型的使用体验。 在 PhpStorm 2023.3 中,现在可以为泛型设置颜色编码,使泛型类型更易区分。

折叠多行 PHP 特性的功能

折叠多行 PHP 特性的功能

随着特性采用的增加,有时会难以阅读来自给定框架的带有长多行特性注解的代码。 在 PhpStorm 2023.3 中,这应该不再是问题,您现在可以折叠多行特性。

从 PHPDoc 到特性的 PHPUnit 元数据转换

从 PHPDoc 到特性的 PHPUnit 元数据转换

PHPUnit 10 introduced support for attributes for adding metadata to test classes and test methods, as well as tested code units. 我们已经实现了检查和快速修复,帮助您从旧的 PHPDoc 注解迁移到这种新样式。

我是如何使用上PhpStorm

官网购买 PhpStorm

在这里插入图片描述

优点:使用方便,而且稳定性好;

缺陷: 官方价格有点小贵;

详细可以参考官网地址:https://www.jetbrains.com.cn/store/#personal

教育或者学术许可获取

在这里插入图片描述

优点:使用方便,几乎免费;

缺陷: 需要教育邮箱,学生邮箱不太稳定,容易失效;

详细可以参考官网地址:https://www.jetbrains.com.cn/community/education/#classrooms

通过激活码激活,这种方式比较麻烦,但是免费,相对稳定,是我目前在使用的一种方式,详细步骤如下:

Stage 1.下载安装 toolbox-app(全家桶管理工具)

  • 先去官网下载
    在这里插入图片描述

  • 可以在toolbox-app下载全家桶最新的工具。

在这里插入图片描述

  • 安装然后打开

请添加图片描述

  • 提示要输入激活码,先关闭应用,等下再打开

请添加图片描述

Stage 2 : 下载工具

  • 打开下载好的激活包(下载后记得不要删除和移动,然后安装的路径尽量不要带中文路径、删掉就会失效的

Stage 3-1 : windows为例

  • 先执行uninstall-all-users.vbs,直接双击打开,
    出现弹框done说明成功

  • 然后再执行install-current-user.vbs,直接双击打开即可
    这里需要等待10秒左右才会出现done弹框,才是成功

  • 打开 PhpStorm

再输入对应的激活码即可

Stage 3-2 : mac为例

  • Mac / Linux 系统与上面 Windows 系统一样,需将补丁所属文件 /jetbra 复制到某个路径,且 路径不能包含空格与中文

  • 再运行uninstall.sh

    sh xxxxx 运行下.sh文件(记得sh后面加空格加路径)

    出现done说明成功。

  • 接着执行install.sh,与上面同理,出现done,the kill xxxxx 说明成功。

常见问题

部分小伙伴 Mac 系统执行脚本遇到如下错误:

sed: RE error:illegal byte secuence

解决方法:
  • 可先执行如下命令,再执行脚本:

export LC_COLLATE='C’export LC_CTYPE=‘C’

  • 重新打开 idea,输入激活码即可

脚本执行成功后,一定要重启 PhpStorm~~

脚本执行成功后,一定要重启 PhpStorm~~

脚本执行成功后,一定要重启 PhpStorm~~

执行脚本做了啥?

  • Windows 用户执行脚本后,脚本会自动在环境变量 -> 用户变量下添加了 IDEA_VM_OPTIONS 变量,变量值为 /jetbra 文件夹下的 .vmoptions 参数文件绝对路径,如下所示:
  • 然后,脚本自动在 idea.vmoptions 文件中引用了补丁 :
  • Mac / Linux 用户执行脚本后,脚本会自动在当期用户环境变量文件中添加了相关参数文件,Mac / Linux 需重启系统,以确保环境变量生效。

成功的小伙伴求一键三连,谢谢

和收费版区别?

  • 激活3-12个月可能会失效,不慌,公众号 金榜探云手:输入clion ,即可获得,永久实时更新
  • 激活无法使用官方收费插件和收费主题,回复 vip 获取欧洲正版全家桶、全插件、全主题、随便用,每年只需一杯咖啡
  • 第三方收费插件基本也是几十分之一,详情 公众号 金榜探云手:输入vip

申明:本教程 补丁、激活码均收集于网络,请勿商用,仅供个人学习使用,如有侵权,请联系作者删除。若条件允许,希望大家购买正版 !

PS: 本教程最新更新时间: 2024年3月1日,持续更新,收藏防失联哟

公众号回复 vip 获取欧洲正版全家桶、全插件、全主题、随便用,每年只需一杯咖啡!

One more thing

关注金榜探云手,每天为你带来最新好用的开发运维工具,如果你觉得用,请点赞+在看,然更多的人了解相关工具。

趁年底有空我也将付费版Idea百科全书,和Pycharm使用百科全书全部输出整理了,这些工具都掌握了对编码效率肯定是有本质上的提升,配合Github Copilot基本能让工具完成大部分开发工作,专注完成业务实现就好。

IDEA付费版使用百科全书
https://ziby0nwxdov.feishu.cn/docx/MiCfdogB4omIa9xlW50cByiGn5n

Pycharm付费版使用百科全书 https://ziby0nwxdov.feishu.cn/docx/DArFdVFQpomfUvxV7xZcCwXYn0c

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/728543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

effective c++ 笔记 条款41-46

条款41&#xff1a;了解隐式接口和编译器多态 显式接口和运行期多态&#xff1a; 面向对象的世界总是以显式接口和运行期多态解决问题 显式接口的构成&#xff1a; 函数名称&#xff0c;参数类型&#xff0c;返回类型&#xff0c;常量性也包括编译器产生的copy构造函数和copy …

142.环形链表II

142.环形链表II 力扣题目链接(opens new window) 题意&#xff1a; 给定一个链表&#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 为了表示给定链表中的环&#xff0c;使用整数 pos 来表示链表尾连接到链表中的位置&#xff08;索引从 0…

Linux性能分析之CPU实战

本课程专注于教授学员如何利用各种工具和技术来分析Linux系统中的CPU性能问题。通过实际操作和案例研究&#xff0c;学员将深入了解CPU性能优化和故障排除&#xff0c;提升其在Linux环境下的技能水平。 课程大小&#xff1a;1.9G 课程下载&#xff1a;https://download.csdn.…

例行性工作(at,crontab)

目录 单一执行的例行性工作at 语法 选项 时间格式 at的工作文件存放目录 at工作的日志文件 实例 命令总结&#xff1a; 循环执行的例行性工作crond 语法 选项 crontab工作调度对应的系统服务 crontab工作的日志文件 用户定义计划任务的文件所在目录 动态查看 crontab文件格式 文…

js拓展-内置对象

目录 1. 数组对象 1.1 数组的四种方式 1.2 JS中数组的特点 1.3 常用方法 2. 日期对象 2.1 日期对象的创建 2.2 日期对象的方法 2.3 案例&#xff1a;输出现在的时间 3. 全局对象 3.1 字符串转换成数字类型 3.2 编码解码函数 1. 数组对象 注&#xff1a;数组在JS中是一…

企业如何进行数据分析,实现科学决策和业务增长

在当今信息时代&#xff0c;数据已经成为企业运营和发展的重要资源。企业拥有大量的数据&#xff0c;包括但不限于销售数据、客户数据、市场数据、企业内部管理数据等等&#xff0c;这些数据记录了企业的运营状况和业务发展情况。但是&#xff0c;这些数据如果不进行分析和利用…

尤雨溪:Vue 未来展望新的一轮

十年&#xff0c;一个既漫长又短暂的时光跨度&#xff0c;对于技术世界来说&#xff0c;更是沧海桑田的瞬间。在这十年里&#xff0c;Vue.js 从无到有&#xff0c;从默默无闻到蜚声全球&#xff0c;不仅改变了前端开发的面貌&#xff0c;更成为了无数开发者手中的得力工具。 在…

软件开发未来发展方向

传统的软件开发行业未来的趋势将会是更加自动化和智能化。随着人工智能和机器学习技术的发展&#xff0c;软件开发过程中的一些重复性、繁琐的工作将会被自动化取代&#xff0c;从而提高开发效率和质量。同时&#xff0c;随着物联网、大数据和云计算等技术的成熟&#xff0c;软…

react项目请求无法自动携带上一次请求的JSESSIONID

存在问题 页面依次发起多次请求&#xff0c;服务端会根据有无携带Set-Cookie从而生成新的JSESSIONID返回&#xff0c;前端需要在后续请求自动携带该值&#xff08;浏览器行为&#xff0c;无需代码控制&#xff09; 但目前的情况为&#xff1a;前端请求无法自动携带&#xff0c;…

建图以及DFS、BFS模板

(/≧▽≦)/~┴┴ 嗨~我叫小奥 ✨✨✨ &#x1f440;&#x1f440;&#x1f440; 个人博客&#xff1a;小奥的博客 &#x1f44d;&#x1f44d;&#x1f44d;&#xff1a;个人CSDN ⭐️⭐️⭐️&#xff1a;传送门 &#x1f379; 本人24应届生一枚&#xff0c;技术和水平有限&am…

蓝桥杯---列名

题目链接&#xff1a;列名 直接模拟出来了 import java.math.BigInteger; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner;public class Main {public static void main(String[] args) {StringBuilder snew String…

高效实用|ChatGPT指令/提示词/prompt/AI指令大全,基础版

大家好&#xff0c;我是淘小白~ 整理了一些关于chatpgt的指令文档分享给大家~ 如果对你有用记得点赞、关注、收藏哦~ 基础版指令主要用于简单任务和场景&#xff0c;英语翻译&#xff0c;发散问答&#xff0c;文章故事写作&#xff0c;周报生成等&#xff0c;在使用过程中&a…

Pytest教程:详解Pytest的三种多级断言方法

当涉及到测试代码时&#xff0c;多级断言可以提供更全面的测试覆盖&#xff0c;并且允许开发者一次性检查多个方面的代码行为。在 Pytest 中&#xff0c;有三种主要的方式来实现多级断言&#xff1a;使用多个普通的 assert 语句、使用 pytest-assume 插件以及使用 pytest-check…

【RT-DETR有效改进】全新的SOATA轻量化下采样操作ADown(轻量又涨点,附手撕结构图)

一、本文介绍 本文给大家带来的改进机制是利用2024/02/21号最新发布的YOLOv9其中提出的ADown模块来改进我们的Conv模块,其中YOLOv9针对于这个模块并没有介绍,只是在其项目文件中用到了,我将其整理出来用于我们的RT-DETR的项目,经过实验我发现该卷积模块(作为下采样模块)…

Node:解决Error: error:0308010C:digital envelope routines::unsupported的四种解决方案

问题描述&#xff1a; 报错&#xff1a;Error: error:0308010C:digital envelope routines::unsupported 报错原因&#xff1a; 主要是因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制&#xff0c;nodeJs v17 之前版本没影响&#xff0c…

多路归并总结

1.鱼塘钓鱼 1262. 鱼塘钓鱼 - AcWing题库 多路归并的模型。 对于每个鱼塘构成的等差数列&#xff0c;我们每次在数列最头部进行选择&#xff0c;选完后再顺延到下一个数即可。我们可以通过维护一个包含所有等差序列首元素的大根堆&#xff0c;使每次可以很容易地选出最大的数…

Vivado使用记录(未完待续)

一、Zynq开发流程 二、软件安装 三、软件使用 字体大小修改&#xff1a;Setting、Font 四、Vivado基本开发流程 1、创建工程 Quick Start 组包含有 Create Project&#xff08;创建工程&#xff09;、 Open Project&#xff08;打开工程&#xff09;、 Open Example Project&…

List之ArrayList、LinkedList深入分析

集合 Java 集合&#xff0c; 也叫作容器&#xff0c;主要是由两大接口派生而来&#xff1a;一个是 Collection接口&#xff0c;主要用于存放单一元素&#xff1b;另一个是 Map 接口&#xff0c;主要用于存放键值对。对于Collection 接口&#xff0c;下面又有三个主要的子接口&…

《剑指 Offer》专项突破版 - 面试题 75 : 数组相对排序(C++ 实现)

目录 计数排序详解 面试题 75 : 数组相对排序 计数排序详解 计数排序是一种线性时间的整数排序算法&#xff0c;其算法步骤为&#xff1a; 找出待排序数组 nums 中的最小值和最大值&#xff08;分别用 min 和 max 表示&#xff09;。 创建一个长度为 max - min 1、元素初始…