国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ バックエンド開発 PHPチュートリアル PSR を理解する - PHP コーディング スタイル ガイド

PSR を理解する - PHP コーディング スタイル ガイド

Oct 22, 2024 am 06:11 AM

Understanding PSR- The PHP Coding Style Guide

PHP でしばらく開発をしている人なら、PSR-12 という用語に遭遇したことがあるでしょう。これは、PHP コミュニティで最も広く受け入れられているコーディング標(biāo)準(zhǔn)の 1 つであり、さまざまなプロジェクト間で PHP コードベースの一貫性を確保することを目的としています。単獨(dú)で作業(yè)している場合でも、チームの一員として作業(yè)している場合でも、PSR-12 に従うことで、コードがよりクリーンになり、読みやすくなり、保守が容易になります。このブログでは、PSR-12 とは何か、なぜ重要なのか、プロジェクトにどのように適用できるのかを詳しく説明します。

目次

  1. PSR-12 とは何ですか?
  2. PSR-12 はなぜ重要ですか?
  3. PSR-12 の重要なルール
    • ファイル構(gòu)造
    • 名前空間と使用宣言
    • クラスとメソッド
    • 制御構(gòu)造
    • コメントとドキュメント
  4. PHP プロジェクトに PSR-12 を適用する方法
  5. PSR-12 の追跡に役立つツール
  6. 最終的な感想

PSR-12とは何ですか?

PSR-12 は、PHP-FIG (Framework Interoperability Group) によって開発された、PHP 用の コーディング スタイル ガイド です。これは、以前の PSR-2 標(biāo)準(zhǔn)に基づいて構(gòu)築されており、最新の PHP の実踐を反映し、コードベース間の一貫性を向上させる更新されたルール セットを提供します。

PSR-12 は、クリーンで読みやすく、保守しやすい PHP コードを作成するための青寫真と考えてください。 PSR-12 に従うことで、開発者はコードが標(biāo)準(zhǔn)化された構(gòu)造に準(zhǔn)拠していることを確認(rèn)できるため、他のユーザーとのコラボレーションやオープンソース プロジェクトでの作業(yè)が容易になります。

PSR-12 が重要な理由

PSR-12 のようなコーディング標(biāo)準(zhǔn)は、スペースやタブの細(xì)かい點(diǎn)を気にするだけではありません。それらが重要な理由は次のとおりです:

  • 読みやすさ: 標(biāo)準(zhǔn)スタイルに従ったコードは、特にプロジェクトに慣れていない開発者にとって読みやすくなります。
  • コラボレーション: 全員が同じルールに従えば、共同作業(yè)がよりスムーズかつ効率的になります。
  • 保守性: クリーンで一貫性のあるコードは、時(shí)間の経過とともにデバッグ、テスト、拡張が容易になります。
  • 相互運(yùn)用性: オープンソース プロジェクトまたはサードパーティ ライブラリを統(tǒng)合する場合、共通の標(biāo)準(zhǔn)に従うことで、異なるコードベース間での互換性が確保されます。

PSR-12 の重要なルール

PSR-12 が規(guī)定する重要なルールのいくつかを詳しく見てみましょう。細(xì)かいガイドラインは數(shù)多くありますが、最も目立つガイドラインを以下に示します。

1. ファイル構(gòu)造

  • 開始タグ: PHP ファイルでは
  • エンコーディング: ファイルは BOM (バイト オーダー マーク) なしで UTF-8 でエンコードする必要があります。
  • 行の長さ: 行は 120 文字を超えてはなりませんが、80 文字までの行が推奨されます。
  • 空白行: PHP の開始タグの後または終了タグの前に空白行があってはなりません。さらに、return ステートメントの前およびメソッド定義の間に 1 つの空白行が必要です。

2. 名前空間と使用宣言

PSR-12 では、明確性を高めるために、名前空間と使用宣言が特定の順序に従う必要があります。

  • 名前空間宣言: 名前空間宣言は、PHP 開始タグの後の最初の行である必要があります。名前空間の後には空白行が 1 行必要です。
  • Use 宣言: すべての use 宣言は、名前空間宣言の後にグループ化し、空白行で區(qū)切る必要があります。さらに、最後の use ステートメントの後には空行が 1 行必要です。

例:

<?php

namespace App\Controllers;

use App\Models\User;
use App\Repositories\UserRepository;

class UserController {
    // Class implementation
}

3. クラスとメソッド

PSR-12 では、クラス、プロパティ、メソッドの宣言方法に関していくつかの厳格なルールが適用されます。

  • クラス宣言: class キーワードの後に??スペース、その後にクラス名を続ける必要があります。開き中括弧 { はクラス宣言と同じ行に配置し、閉じ中括弧 } は別の行に配置する必要があります。
  • プロパティ: すべてのプロパティに対して可視性 (パブリック、プロテクト、プライベート) を宣言する必要があります。
  • メソッド: クラス宣言と同様に、関數(shù)キーワードの後に??スペース、その後にメソッド名を続ける必要があります。すべてのメソッドに対して可視性を宣言する必要があります。
class UserController {
    private $userRepository;

    public function __construct(UserRepository $userRepository) {
        $this->userRepository = $userRepository;
    }
}




<h4>
  
  
  4. 制御構(gòu)造
</h4>

<p>if、for、switch などの制御構(gòu)造は、特定のルールに従う必要があります:</p>

<ul>
<li>
<strong>構(gòu)造</strong>: 制御キーワードと左括弧の間にはスペースが 1 つ必要です。単一行のステートメントであっても、中括弧 {} を常に使用する必要があります。</li>
<li>
<strong>インデント</strong>: 制御構(gòu)造內(nèi)のすべてのブロックは 1 レベル (通常は 4 つのスペース) でインデントする必要があります。
</li>
</ul>

<pre class="brush:php;toolbar:false">if ($user->isAdmin()) {
    echo "User is an admin";
} else {
    echo "User is not an admin";
}

5. コメントとドキュメント

コメントは、コードの特定の部分が存在する理由を説明するために非常に重要です。 PSR-12 は、適切かつ明確なコメントの必要性を強(qiáng)調(diào)しています。

  • コメントをブロック: 複數(shù)行のコメントには /* */ を使用し、コメントの前に空行を置きます。
  • 単一行コメント: インライン コメントには // を使用し、コメントが意味のあるものであることを確認(rèn)してください。
<?php

namespace App\Controllers;

use App\Models\User;
use App\Repositories\UserRepository;

class UserController {
    // Class implementation
}

PHP プロジェクトに PSR-12 を適用する方法

プロジェクトで PSR-12 に従うには、コードを記述するときにガイドラインに手動(dòng)で従うこともできますが、確実に準(zhǔn)拠する最善の方法は、自動(dòng)化ツールを使用することです。

まず、次の一般的な方法をよく理解してください:

  • 一貫したインデントを使用する: インデントには 4 つのスペースが必要です。
  • 行の長さを制限する: 読みやすくするためには 80 文字が推奨されますが、行は 120 文字未満に抑えるようにしてください。
  • コード構(gòu)造を整理する: クラス宣言、可視性、および制御構(gòu)造のルールに従います。

PSR-12 の追跡に役立つツール

コードが PSR-12 に従っていることを手動(dòng)で確認(rèn)するには時(shí)間がかかる場合がありますが、このプロセスの自動(dòng)化に役立つツールがあります。

1.PHP_CodeSniffer

PHP コードが PSR-12 に従っていることを確認(rèn)するための最も人気のあるツールの 1 つは、PHP_CodeSniffer です。コードを分析し、標(biāo)準(zhǔn)から逸脫している箇所を指摘します。

インストールして使用するには:

class UserController {
    private $userRepository;

    public function __construct(UserRepository $userRepository) {
        $this->userRepository = $userRepository;
    }
}

次に、コードに対して実行します。

if ($user->isAdmin()) {
    echo "User is an admin";
} else {
    echo "User is not an admin";
}

2. PHP CS フィクサー

もう 1 つの便利なツールは、PHP CS Fixer です。問題を検出するだけでなく、PSR-12 に準(zhǔn)拠するようにコードを自動(dòng)的に修正することもできます。

// Fetch user from the repository
$user = $userRepository->find($id);

/*
 * If user is not found, throw an exception.
 * This helps in handling invalid user IDs.
 */
if (!$user) {
    throw new NotFoundException();
}

次のコマンドでフィクサーを?qū)g行します:

composer require "squizlabs/php_codesniffer=*"

3.PHPStorm

PHPStorm を使用している場合は、PSR-12 に従うように設(shè)定できます。 設(shè)定 -> に移動(dòng)します。 編集者 -> コードスタイル -> PHP を選択し、標(biāo)準(zhǔn)を PSR-12 に設(shè)定します。

最終的な考え

PHP プロジェクトで PSR-12 に従うことは、単に任意のルールに従うだけではありません。一人で作業(yè)している場合でも、チームで作業(yè)している場合でも、コードをよりクリーンで読みやすく、保守しやすくすることが重要です。 PSR-12 に従うことで、自分自身のためだけでなく、PHP コミュニティ全體のためにコードを書くことになります。

この標(biāo)準(zhǔn)の採用は、プロフェッショナルで一貫性があり、保守しやすい PHP コードを作成するための一歩です。前述のツールを使用してプロセスを簡単にし、プロジェクトがどれだけクリーンで整理されたものになるかを見てください!

コーディングを楽しんでください!

以上がPSR を理解する - PHP コーディング スタイル ガイドの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

パスワード強(qiáng)度のPHP Regex パスワード強(qiáng)度のPHP Regex Jul 03, 2025 am 10:33 AM

パスワードの強(qiáng)度を判斷するには、定期的な処理と論理処理を組み合わせる必要があります?;镜膜室摔弦韵陇蓼欷蓼埂?。長さは8桁以上です。 2。少なくとも小文字、大文字、および數(shù)字を含む。 3。特別な文字制限を追加できます。高度な側(cè)面に関しては、文字の継続的な重複と漸進(jìn)的/減少シーケンスを避ける必要があります。これには、PHP機(jī)能検出が必要です。同時(shí)に、ブラックリストを?qū)毪筏啤ⅴ靴攻铹`ドや123456などの一般的な弱いパスワードをフィルタリングする必要があります。最後に、評(píng)価の精度を向上させるためにZXCVBNライブラリを組み合わせることをお?jiǎng)幛幛筏蓼埂?/p>

PHP変數(shù)スコープは説明されています PHP変數(shù)スコープは説明されています Jul 17, 2025 am 04:16 AM

PHP変數(shù)スコープの一般的な問題とソリューションには次のものが含まれます。1。グローバル変數(shù)は関數(shù)內(nèi)でアクセスできず、グローバルキーワードまたはパラメーターを使用して渡す必要があります。 2。靜的変數(shù)は靜的で宣言され、1回のみ初期化され、値は複數(shù)の呼び出し間で維持されます。 3. $ _GETや$ _POSTなどのハイパーグローバル変數(shù)は、任意の範(fàn)囲で直接使用できますが、安全なフィルタリングに注意を払う必要があります。 4.匿名関數(shù)は、使用キーワードを使用して親スコープ変數(shù)を?qū)毪工氡匾ⅳ辍⑼獠繅鋽?shù)を変更する場合は、參照を渡す必要があります。これらのルールを習(xí)得すると、エラーを回避し、コードの安定性が向上するのに役立ちます。

ファイルアップロードをPHPで安全に処理する方法は? ファイルアップロードをPHPで安全に処理する方法は? Jul 08, 2025 am 02:37 AM

PHPファイルのアップロードを安全に処理するには、ソースとタイプを確認(rèn)し、ファイル名とパスを制御し、サーバー制限を設(shè)定し、メディアファイルを2回プロセスする必要があります。 1.トークンを介してCSRFを防ぐためにアップロードソースを確認(rèn)し、ホワイトリストコントロールを使用してFINFO_FILEを介して実際のMIMEタイプを検出します。 2。ファイルをランダムな文字列に変更し、検出タイプに従って非WEBディレクトリに保存する拡張機(jī)能を決定します。 3。PHP構(gòu)成は、アップロードサイズを制限し、一時(shí)的なディレクトリnginx/apacheはアップロードディレクトリへのアクセスを禁止します。 4. GDライブラリは寫真を再利用して、潛在的な悪意のあるデータをクリアします。

PHPでコードをコメントします PHPでコードをコメントします Jul 18, 2025 am 04:57 AM

PHPコメントコードには3つの一般的な方法があります。1。//#を使用して1行のコードをブロックすると、//を使用することをお?jiǎng)幛幛筏蓼埂?2。使用/.../複數(shù)の行でコードブロックをラップするには、ネストすることはできませんが交差することができます。 3. / if(){}を使用するなどの組み合わせスキルコメントロジックブロックを制御するか、エディターショートカットキーで効率を改善するには、シンボルを閉じることに注意を払い、使用時(shí)にネストを避ける必要があります。

発電機(jī)はPHPでどのように機(jī)能しますか? 発電機(jī)はPHPでどのように機(jī)能しますか? Jul 11, 2025 am 03:12 AM

ageneratorinphpisamemory-efficientwaytoateate-overdeatatasetasetasetasetsinging valueseintimeintimeturningthemallatonce.1.generatorsususedeywordproducevaluesedemand、memoryusage.2を還元すること。2

PHPコメントを書くためのヒント PHPコメントを書くためのヒント Jul 18, 2025 am 04:51 AM

PHPコメントを書くための鍵は、目的と仕様を明確にすることです。コメントは、「何が行われたのか」ではなく「なぜ」を説明する必要があり、冗長性や単純さを避けてください。 1.読みやすさとツールの互換性を向上させるために、クラスおよびメソッドの説明にdocblock(/*/)などの統(tǒng)合形式を使用します。 2。JSジャンプを手動(dòng)で出力する必要がある理由など、ロジックの背後にある理由を強(qiáng)調(diào)します。 3.複雑なコードの前に概要説明を追加し、手順でプロセスを説明し、全體的なアイデアを理解するのに役立ちます。 4. TodoとFixmeを合理的に使用して、To Doアイテムと問題をマークして、その後の追跡とコラボレーションを促進(jìn)します。優(yōu)れた注釈は、通信コストを削減し、コードメンテナンスの効率を向上させることができます。

クイックPHPインストールチュートリアル クイックPHPインストールチュートリアル Jul 18, 2025 am 04:52 AM

to installphpquickly、usexampponwindowsorhomebrewonmacos.1.onwindows、downloadandinstallxampp、selectcomponents、startapache、andplacefilesinhtdocs.2

PHPの學(xué)習(xí):初心者向けガイド PHPの學(xué)習(xí):初心者向けガイド Jul 18, 2025 am 04:54 AM

tolearnphpefctivially、startbysettingupalocalserverenvironmentusingtoolslikexamppandacodeeditorlikevscode.1)instalxamppforapa Che、mysql、andphp.2)useocodeeditorforsyntaxsupport.3)testyoursetup withasimplephpfile.next、Learnpbasicsincludingvariables、ech

See all articles