목차
PHP 标签
字符编码
边际效应
属性
方法
백엔드 개발 PHP 튜토리얼 PHP-FIG PSR-1 # 基本编码标准

PHP-FIG PSR-1 # 基本编码标准

Jun 23, 2016 pm 01:38 PM

本标准包含了 对 用于保障 PHP共享代码的互操作性 的标准编码元素。

The key words “MUST 必须”, “MUST NOT 必须不”, “REQUIRED 需要”, “SHALL 将要”, “SHALL NOT 将不”, “SHOULD 应该”, “SHOULD NOT不应该”, “RECOMMENDED 推荐的”, “MAY 可以”, and “OPTIONAL 可选的” in this document are to be interpreted as described in RFC 2119.

概览
  1. 文件 必须 使用
  2. 文件中的PHP代码 必须 使用无BOM头 UTF-8编码。
  3. 文件即可以声明“符号”(诸如 类、函数、常量等),也可做一些边际效应的事情 (诸如产生输出, 改变ini设置等.)。 但这两类事情不应出现在同一个文件里。
  4. 命名空间 和 类 必须遵循“autoloading” PSR: [PSR-0, PSR-4]。
  5. 类名必须使用 StudlyCaps (首字母大写的驼峰)声明。
  6. 类常量必须使用下划线分割的大写字母。
  7. 方法名必须使用驼峰声明。
文件

PHP 标签

PHP 代码必须使用长标签 或 echo短标签 ; 必须不能使用其他形态的标签.

字符编码

PHP代码必须使用无BOM头UTF-8编码

边际效应

一个文件 (应该)要么声明符号(类、函数和常量等),不能引起任何边际效应;要么执行产生边际效应的代码。这两种情况不能出现在一个文件中。
“边际效应” 执行与声明类、函数、常量无关的逻辑。

“边际效应” 包括但不限于: 生成输出, 显式的require或include, 连接外部服务, 修改ini配置, 发出 errors 或 exceptions, 修改全局或静态变量, 读写文件 等等.

以下是一个即声明符号,又产生边际效应的例子; 这是应该要避免的情况:

<?php// 边际效应: 修改 ini 设置ini_set('error_reporting', E_ALL);// 边际效应: 加载文件include "file.php";// 边际效应: 生成输出echo "<html>\n";// 声明function foo() {    // function body}
로그인 후 복사

以下例子只包含声明,无边际效应;值得效仿:

<?php// declarationfunction foo() {    // function body}// 条件式声明 不是边际效应if (! function_exists('bar')) {    function bar() {        // function body    }}
로그인 후 복사
命名空间名和类名

命名空间名和类名必须遵循 “autoloading” PSR: [PSR-0, PSR-4].

这意味着每个文件只能包含一个类, 并且至少有一层命名空间: 顶级的 vendor 名.

类名必须使用 StudlyCaps (首字母大写驼峰) 声明.

针对 PHP 5.3 及以后版本的代码,必须使用正式的命名空间(5.3之前PHP不支持namespace).

例如:

<?php// PHP 5.3 and later:namespace Vendor\Model;class Foo {}Code written for 5.2.x and before SHOULD use the pseudo-namespacing convention of Vendor_prefixes on class names.<?php// PHP 5.2.x and earlier:class Vendor_Model_Foo{}
로그인 후 복사
类常量、属性和方法

这里的“类”包括 classes, interfaces 和 traits.

4.1. 常量

类常量必须使用下划线分割的大写声明。

 <?phpnamespace Vendor\Model;class Foo {    const VERSION = '1.0';    const DATE_APPROVED = '2012-06-01';}
로그인 후 복사

属性

本指南特意避免偏向 StudlyCaps, camelCase 和 $under_score 中任意一种属性命名风格.

无论在用哪种命名风格,在合理的范围内均应改保持一致。 范围可以使 vendor-level, package-level, class-level, 或 method-level。

方法

方法名必须使用驼峰 camelCase().

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄) 11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄) Mar 03, 2025 am 10:49 AM

11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄)

Laravel의 플래시 세션 데이터로 작업합니다 Laravel의 플래시 세션 데이터로 작업합니다 Mar 12, 2025 pm 05:08 PM

Laravel의 플래시 세션 데이터로 작업합니다

Laravel Back End : Part 2, React가있는 React 앱 구축 Laravel Back End : Part 2, React가있는 React 앱 구축 Mar 04, 2025 am 09:33 AM

Laravel Back End : Part 2, React가있는 React 앱 구축

Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Mar 12, 2025 pm 05:09 PM

Laravel 테스트에서 단순화 된 HTTP 응답 조롱

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 Mar 14, 2025 am 11:42 AM

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Mar 13, 2025 pm 12:08 PM

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트

라 라벨에서 알림 라 라벨에서 알림 Mar 04, 2025 am 09:22 AM

라 라벨에서 알림

2025 PHP 상황 조사 발표 2025 PHP 상황 조사 발표 Mar 03, 2025 pm 04:20 PM

2025 PHP 상황 조사 발표

See all articles