PHP编码规范psr(php编码方式)

华为云服务器特价优惠火热进行中!

2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。

合作流程:
1、点击链接注册/关联华为云账号:点击跳转
2、添加客服微信号:cloud7591,确定产品方案、价格方案、服务支持方案等;
3、客服协助购买,并拉微信技术服务群,享受一对一免费技术支持服务;
技术专家在金蝶、华为、腾讯原厂有多年工作经验,并已从事云计算服务8年,可对域名、备案、网站搭建、系统部署、AI人工智能、云资源规划等上云常见问题提供更专业靠谱的服务,对相应产品提供更优惠的报价和方案,欢迎咨询。

今天给各位分享PHP编码规范psr的知识,其中也会对php编码方式进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

微信号:cloud7591
如需了解更多,欢迎添加客服微信咨询。
复制微信号

本文目录一览:

怎么设置phpstorm 使代码自动遵循psr规范

PhPStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能。Phpstrom的一款名为Magicento的插件对快速创建Magento插件十分有用。

常用快捷键

设置快捷键:File - Settings - IDE Settings - Keymap - 选择“eclipse” - 然后“Copy”一份 - 再个性化设置(自己习惯的)快捷键

常用快捷键(keymaps:Default情况下)

Esc键编辑器(从工具窗口)

F1 帮助 千万别按,很卡!

F2(Shift+F2) 下/上高亮错误或警告快速定位

F3 向下查找关键字出现位置

F4 查找变量来源

F5 复制文件/文件夹

F6 移动

F11 切换书签

F12 返回到以前的工具窗口

注意:部分快捷键,必须在没有更改快捷键的情况下才可以使用

查询快捷键

CTRL+N 查找类羡哗

CTRL+SHIFT+N 查找文件,打开工程中的文件(类似于eclipse中的ctrl+shift+R),目的是打开当前工程下任意目录的文件

CTRL+SHIFT+ALT+N 查 找类中的方法或变量(JS)

CIRL+B 找变量的来源,跳到丛宽变量申明处

CTRL+ALT+B 找所有的子类

CTRL+SHIFT+B 找变量的 类

CTRL+G 定位行,跳转行

CTRL+F 在当前窗口查找文本

CTRL+SHIFT+F 在指定路径查找文本

CTRL+R 当前窗口替换文本

CTRL+SHIFT+R 在指定路径替换文本

ALT+SHIFT+C 查找修改的文件,最近变更历史

CTRL+E 最近打开的文件

F3 查找下一个

SHIFT+F3 查找上一个

F4 查找变量来源

CTRL+ALT+F7 选 中的字符 查找工程出现的地方

ALT+F7 直接查询选中的字符

Ctrl+F7 文件中查询选中字符

自动代码

ALT+回车 导入包,自动修正

CTRL+ALT+L 格式化代码

CTRL+ALT+I 自动缩进

CTRL+ALT+O 优化导入的类和包

CTRL+E 最近更改的文件/代码

CTRL+SHIFT+SPACE 切换窗口

CTRL+SPACE空格 代码自动完成,代码提示,一般与输入法冲突

CTRL+ALT+SPACE 类 名或接口名提示(与系统冲突)

CTRL+P 方法参数提示,显示默认参数

CTRL+J 自动代码提示,自动补全

CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里

ALT+INSERT 生成代码(如GET,SET方法,构造函数等)

复制快捷方式

F5 复制文件/文件夹

CTRL+C 复制

CTRL+V 粘贴

CTRL+X 剪 切,删除行

CTRL+D 复制行

Ctrl + Y 删除行插入符号

CTRL+SHIFT+V 可以复制多个文本

高亮

CTRL+F 选中的文字,高亮显示 上下跳到下一个或者上一个

F2(Shift+F2) 高亮错误或警告快速定位

SHIFT+F2 高亮错误或警告快速定位

CTRL+SHIFT+F7 高亮显示多个关键字.

本地历史VCS/SVN

Alt +反引号(') 快速弹出VCS菜单

Ctrl + K 提交项目VCS

Ctrl + T 更新项目从VCS

Alt + Shift + C 查看最近发生的变化

其他快捷方式

CTRL+Z 倒退(代渗派亮码后悔)

CTRL+SHIFT+Z 向前

CTRL+H 显 示类结构图

Ctrl +F12 文件结构弹出

Ctrl+Shift+H 方法的层次结构

Ctrl+Alt+H 呼叫层次

CTRL+Q 显示代码注释

CTRL+W 选中代码,连续按会 有其他效果

Ctrl+Shift+W 减少当前选择到以前的状态

CTRL+B 转到声明,快速打开光标处的类或方法说明注释(CTRL + 鼠标单击 也可以)

CTRL+O 魔术方法

CTRL+/ 注释//取消注释

CTRL+SHIFT+/ 注释/*...*/

CTRL+ [] 光标移动到 {}[]开头或结尾位置

CTRL+SHIFT+[] 选中块代码,可以快速复制

ctrl + '-/+': 可以折叠项目中的任何代码块,包括htm中的任意nodetype=3的元素,function,或对象直接量等等。它不是选中折叠,而是自动识别折叠。

ctrl + '.': 折叠选中的代码的代码

Ctrl+Shift+U 选中的字符大小写转换

ctrl+shift+i 快速查看变量或方法定义源

CTRL+ALT+F12 资源管理器打开文件夹,跳转至当前文件在磁盘上的位置

ALT+F1 选择当前文件或菜单中的任何视图工具栏

SHIFT+ALT+INSERT 竖编辑模式

CTRL+ALT ←/→ 返回上次编辑的位置

ALT+ ←/→ 切换代码视图,标签切换

ALT+ ↑/↓ 在方法间快速移动定位

alt + '7': 显示当前的类/函数结构。类似于eclipse中的outline的效果。试验了一下,要比aptana的给力一些,但还是不能完全显示prototype下面的方法名。

SHIFT+F6 重命名,重构 当前区域内变量重命名/重构

不但可以重命名文件名,而且可以命名函数名,函数名可以搜索引用的文件,还可以重命名局部变量。还可以重命名标签名。在sublime text中有个类似的快捷键:ctrl+shift+d。

ctrl+shift+enter(智能完善代码 如 if())

ctrl+shift+up/down(移动行、合并选中行,代码选中区域 向上/下移动)

CTRL+UP/DOWN 光标跳转到编辑器显示区第一行或最后一行下

ESC 光标返回编辑框

SHIFT+ESC 光 标返回编辑框,关闭无用的窗口

CTRL+F4 关闭当前的编辑器或选项卡

Ctrl + Alt + V引入变量

Ctrl + Alt + F 类似引入变量

Ctrl + Alt + C引入常量

Ctrl + Tab 键切换选项卡和工具窗口

Ctrl + Shift + A 查找快捷键

Alt + #[0-9] 打开相应的工具窗口

Ctrl + Shift + F12 切换最大化编辑器

Alt + Shift + F 添加到收藏夹

Alt + Shift + I 检查当前文件与当前的配置文件

Ctrl +反引号(`) 快速切换目前的配色/代码方案/快捷键方案/界面方案

Ctrl + Alt + S 打开设置对话框(与QQ冲突)

运行

Alt + Shift + F10 选择的配置和运行

Alt + Shift + F9 选择配置和调试

Shift + F10 运行

Shift + F9调试

Ctrl + Shift + F10运行范围内配置编辑器

Ctrl + Shift + X运行命令行

调试

F8步过

F7步入

Shift + F7智能进入

Shift + F8步骤

ALT + F9运行到光标

Alt + F8计算表达式

F9恢复程序

Ctrl + F8切换断点

Ctrl + Shift + F8查看断点

导航

Shift + Esc键隐藏活动或最后一个激活的窗口

Ctrl + Shift + F4关闭活动运行/消息/ / ...选项卡

Ctrl + Shift + Backspace键导航到最后编辑的位置

Ctrl + Alt+B 到实施(S)

Ctrl + Shift+I 打开快速定义查询

Ctrl + U 转到super-method/super-class

Alt + Home 组合显示导航栏

书签

Ctrl + F11切换书签助记符

Ctrl +#[0-9]转到编号书签

Shift + F11显示书签

编辑

Ctrl + Q 快速文档查询

ALT + INSERT 生成的代码...器(getter,setter方法,构造函数)

Ctrl + O 覆盖方法

Ctrl + I 实现方法

Alt + Enter 显示意图的行动和快速修复

Shift + Tab 键缩进/取消缩进选中的行

Ctrl + Shift + J 智能线连接(仅适用于HTML和JavaScript)

Ctrl + Enter 智能线分割(HTML和JavaScript)

Shift + Enter 开始新的生产线

Ctrl + Delete 删除字(word)

Ctrl + Backspace删除字开始

Ctrl +小键盘+ / - 展开/折叠代码块

Ctrl + Shift +小键盘+展开全部

Ctrl + Shift +数字键盘关闭全部

什么是psr-0,psr-1,psr-2标准

转自:

FIG组织在制定跟PHP相关规范,简称PSR,PSR旨在通过讨论我们代码项目的共同点以找出一个协作编程的方法。

什么是psr0强调自动加载的方式

下文描述了若要使用一个通用的自动加载器(autoloader),你所需要遵守的规范:

规范

一个完全标准的命名空间(namespace)和类(class)的结构是这样的:\*

每个命名空间(namespace)都必须有一个顶级的空间名(namespace)("组织名(Vendor Name)")。

每个命名空间(namespace)中可以根据需要使用任意数量的子租野命名空清弊间(sub-namespace)。

从文件系统中加载源文件时,空间名(namespace)中的分隔符将被转换为 DIRECTORY_SEPARATOR。

类名(class name)中的每个下划线_都将被转换为一个DIRECTORY_SEPARATOR。下划线_在空间名(namespace)中没有什么特殊的意义。

完全标准的命名空间(namespace)和类(class)从文件系统加载源文件时将会加上.php后缀。

组织名答型族(vendor name),空间名(namespace),类名(class name)都由大小写字母组合而成。

示例

\Doctrine\Common\IsolatedClassLoader = /path/to/project/lib/vendor/Doctrine/Common/IsolatedClassLoader.php

\Symfony\Core\Request = /path/to/project/lib/vendor/Symfony/Core/Request.php

\Zend\Acl = /path/to/project/lib/vendor/Zend/Acl.php

\Zend\Mail\Message = /path/to/project/lib/vendor/Zend/Mail/Message.php

空间名(namespace)和类名(class name)中的下划线

\namespace\package\Class_Name = /path/to/project/lib/vendor/namespace/package/Class/Name.php

\namespace\package_name\Class_Name = /path/to/project/lib/vendor/namespace/package_name/Class/Name.php

以上是我们为实现通用的自动加载而制定的最低标准。你可以利用能够自动加载PHP 5.3类的SplClassLoader来测试你的代码是否符合这些标准。

实例

下面是一个怎样利用上述标准来实现自动加载的示例函数。

?php

function autoload($className)

{

$className = ltrim($className, '\\');

$fileName = '';

$namespace = '';

if ($lastNsPos = strrpos($className, '\\')) {

$namespace = substr($className, 0, $lastNsPos);

$className = substr($className, $lastNsPos + 1);

$fileName = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;

}

$fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';

require $fileName;

}

SplClassLoader实现

下面的gist是一个按照上面建议的标准来自动加载类的SplClassLoader实例。这是依据这些标准来加载PHP 5.3类的推荐方案。

什么是psr1,定义基本代码规范

本节我们将会讨论一些基本的代码规范问题,以此作为将来讨论更高级别的代码分享和技术互用的基础。

RFC 2119中的必须(MUST),不可(MUST NOT),建议(SHOULD),不建议(SHOULD NOT),可以/可能(MAY)等关键词将在本节用来做一些解释性的描述。

1. 概述

源文件必须只使用 和 这两种标签。

源文件中php代码的编码格式必须只使用不带字节顺序标记(BOM)的UTF-8。

一个源文件建议只用来做声明(类(class),函数(function),常量(constant)等)或者只用来做一些引起副作用的操作(例如:输出信息,修改.ini配置等),但不建议同时做这两件事。

命名空间(namespace)和类(class) 必须遵守PSR-0标准。

类名(class name) 必须使用骆驼式(StudlyCaps)写法 (译者注:驼峰式(cameCase)的一种变种,后文将直接用StudlyCaps表示)。

类(class)中的常量必须只由大写字母和下划线(_)组成。

方法名(method name) 必须使用驼峰式(cameCase)写法(译者注:后文将直接用camelCase表示)。

2. 文件

2.1. PHP标签

PHP代码必须只使用长标签()或者短输出式标签(?= ?);而不可使用其他标签。

2.2. 字符编码

PHP代码的编码格式必须只使用不带字节顺序标记(BOM)的UTF-8。

2.3. 副作用

一个源文件建议只用来做声明(类(class),函数(function),常量(constant)等)或者只用来做一些引起副作用的操作(例如:输出信息,修改.ini配置等),但不建议同时做这两件事。

短语副作用(side effects)的意思是 在包含文件时 所执行的逻辑与所声明的类(class),函数(function),常量(constant)等没有直接的关系。

副作用(side effects)包含但不局限于:产生输出,显式地使用require或include,连接外部服务,修改ini配置,触发错误或异常,修改全局或者静态变量,读取或修改文件等等

下面是一个既包含声明又有副作用的示例文件;即应避免的例子:

?php

// 副作用:修改了ini配置

ini_set('error_reporting', E_ALL);

// 副作用:载入了文件

include "file.php";

// 副作用:产生了输出

echo "html\n";

// 声明

function foo()

{

// 函数体

}

下面是一个仅包含声明的示例文件;即应提倡的例子:

?php

// 声明

function foo()

{

// 函数体

}

// 条件式声明不算做是副作用

if (! function_exists('bar')) {

function bar()

{

// 函数体

}

}

3. 空间名(namespace)和类名(class name)

命名空间(namespace)和类(class)必须遵守 PSR-0.

这意味着一个源文件中只能有一个类(class),并且每个类(class)至少要有一级空间名(namespace):即一个顶级的组织名(vendor name)。

类名(class name) 必须使用StudlyCaps写法。

PHP5.3之后的代码必须使用正式的命名空间(namespace) 例子:

?php

// PHP 5.3 及之后:

namespace Vendor\Model;

class Foo

{

}

PHP5.2.x之前的代码建议用伪命名空间Vendor_作为类名(class name)的前缀

?php

// PHP 5.2.x 及之前:

class Vendor_Model_Foo

{

}

4. 类的常量、属性和方法

术语类(class)指所有的类(class),接口(interface)和特性(trait)

4.1. 常量

类常量必须只由大写字母和下划线(_)组成。 例子:

?php

namespace Vendor\Model;

class Foo

{

const VERSION = '1.0';

const DATE_APPROVED = '2012-06-01';

}

4.2. 属性

本指南中故意不对$StulyCaps,$camelCase或者$unser_score中的某一种风格作特别推荐,完全由读者依据个人喜好决定属性名的命名风格。

但是不管你如何定义属性名,建议在一个合理的范围内保持一致。这个范围可能是组织(vendor)级别的,包(package)级别的,类(class)级别的,或者方法(method)级别的。

4.3. 方法

方法名则必须使用camelCase()风格来声明。

什么是PSR2定义代码风格

代码风格指南

本手册是基础代码规范(PSR-1)的继承和扩展。

为了尽可能的提升阅读其他人代码时的效率,下面例举了一系列的通用规则,特别是有关于PHP代码风格的。

各个成员项目间的共性组成了这组代码规范。当开发者们在多个项目中合作时,本指南将会成为所有这些项目中共用的一组代码规范。 因此,本指南的益处不在于这些规则本身,而在于在所有项目中共用这些规则。

RFC 2119中的必须(MUST),不可(MUST NOT),建议(SHOULD),不建议(SHOULD NOT),可以/可能(MAY)等关键词将在本节用来做一些解释性的描述。

psr 什么意思

简单来说psr就是规山腊范了PHP开发的编码风格,进行统逗芹滑一规范!

PSR 是 PHP Standard Recommendations 的简写,由PHP FIG组织制定的 PHP 规范,是 PHP 开发首帆的实践标准。

PHP FIG,FIG 是 Framework Interoperability Group(框架可互用性小组)的缩写,由几位开源框架的开发者成立于 2009 年,从那开始也选取了很多其他成员进来(包括但不限于Laravel, Joomla, Drupal, Composer, Phalcon, Slim, Symfony, Zend Framework等),虽然不是「官方」组织,但也代表了大部分的 PHP 社区。

项目的目的在于:通过框架作者或者框架的代表之间讨论,以最低程度的限制,制定一个协作标准,各个框架遵循统一的编码规范,避免各家自行发展的风格阻碍了 PHP 的发展,解决这个程序设计师由来已久的困扰。

目前已表决通过了 6 套标准,已经得到大部分 PHP 框架的支持和认可。

psr是什么意思?

1、PSR是plan of speed reading的缩写,春厅就是快速阅读计划,快速阅读计划在中国称做全脑速读。

2、PSR,Point of safety return,中文全称“安全折返点”,往南极的飞机到这个点,汽油刚好用掉了一半,这时回头还可以安全降落,一旦越过这搏凯个点,就没有回头的机会,只能一直往南极飞去。

3、PSR即Periodic Safety Review,对在运核电站现状的定期审查,是国家核安全局对在运核电站现状的一个定期审查,其可通过法规HAD102进行。

4、化学反应,全称Perfectly Stirred Reactor,中文表述为完全搅拌的全混流反应器,该反应器是一个在控制容积内达到完全混合的理想反应器。

5、原边反馈(PSR)的AC/DC控制技术是最近10年间发展起来的新型AC/DC控制技术,与传统的副边反馈的光耦加431的结构相比,其最大的优势在于省去了这两个芯片以及与之配合工作的一组元器件,这样就节省了系统板上的空间,降低了成本并且提高了系统的可靠性。

6、PSR是PHP Standard Recommendations的简写,由PHP FIG组织制定的PHP规范,是PHP开发的实践标准。

参考资料来源:百度百科-PSR (PHP标准规范扒银隐)

参考资料来源:百度百科-PSR (原边反馈)

参考资料来源:百度百科-PSR (化学反应)

参考资料来源:百度百科-PSR (对在运核电站现状的定期审查)

参考资料来源:百度百科-PSR (安全折返点)

参考资料来源:百度百科-PSR (能源安全)

php是如何引入PSR规范

PSR规范只是一套规范,你可以按规范来编码也可以不按规范来编码敏运。

如果说是“引入”这个词的话,那只有IDE的PSR规范检查功能称的上所谓的“引入”。你用桥尺梁的IDE打开PSR规范检查后,你敲代码的时候会自动对你的代码是否符合规范进行检查。

每个IDE不同,有些已经集成了,只需要打开。困者有些则需要装扩展。

PHP编码规范psr的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php编码方式、PHP编码规范psr的信息别忘了在本站进行查找喔。

发布于 2023-04-14 15:04:29
收藏
分享
海报
34
目录

    忘记密码?

    图形验证码

    复制成功
    微信号: cloud7591
    如需了解更多,欢迎添加客服微信咨询。
    我知道了