ホームページ  >  記事  >  バックエンド開発  >  PHP コードとファイル命名規則の分析例

PHP コードとファイル命名規則の分析例

黄舟
黄舟オリジナル
2017-07-26 11:51:311064ブラウズ

命名規則

開発プロセス中は、次の命名規則に従うようにしてください:

  • クラス ファイルにはすべて .class.php という接尾辞が付けられます (これは、ThinkPHP によって内部的に使用されるクラス ライブラリ ファイルを指し、外部でロードされたクラス ライブラリ ファイル)、キャメルケースの名前付けを使用し、 DbMysql.class.php のように最初の文字が大文字になります。 DbMysql.class.php

  • 类的命名空间地址和所在的路径地址一致,例如 HomeControllerUserController类所在的路径应该是 Application/Home/Controller/UserController.class.php

  • 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写);

  • 类名和文件名一致(包括上面说的大小写一致),例如 UserController类的文件命名是UserController.class.php, InfoModel类的文件名是InfoModel.class.php, 并且不同的类库的类命名有一定的规范;

  • 函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求);

  • 函数的命名使用小写字母和下划线的方式,例如 get_client_ip

  • 方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 getUserName_parseType,通常下划线开头的方法属于私有方法;

  • 属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName_instance,通常下划线开头的属性属于私有属性;

  • 以双下划线“__”打头的函数或方法作为魔法方法,例如 __call 和 __autoload

  • 常量以大写字母和下划线命名,例如 HAS_ONE MANY_TO_MANY

  • 配置参数以大写字母和下划线命名,例如HTML_CACHE_ON

  • 语言变量以大写字母和下划线命名,例如MY_LANG,以下划线打头的语言变量通常用于系统语言变量,例如 _CLASS_NOT_EXIST_

  • 对变量的命名没有强制的规范,可以根据团队规范来进行;

  • ThinkPHP的模板文件默认是以.html 为后缀(可以通过配置修改);

  • 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段是正确写法,类似 _username クラスの名前空間アドレスは、パス アドレス (例: HomeControllerUserController クラスが配置されているパスは Application/Home/Controller/UserController.class.php である必要があります)。

Unix 系システムでは大文字と小文字が区別されるため、ファイルの名前付けと呼び出しの大文字と小文字が一致していることを確認してください (デバッグ モードの ThinkPHP は Windows プラットフォームでも大文字と小文字を厳密にチェックします)。名前とファイル名は一貫しています (上記の場合を含む)。たとえば

UserController クラスのファイル名は UserController.class.php で、ファイル名は UserController.class.php です。 InfoModel クラスの名前は InfoModel.class.php であり、それらは異なります。クラス ライブラリ内のクラスの命名には特定の標準があり、
関数、設定ファイル、およびその他のクラス ライブラリ ファイルには通常接尾辞が付けられます。 .php を使用 (サードパーティによって導入されたものは必須ではありません);


関数の名前には、

get_client_ip などの小文字とアンダースコアが使用されます。メソッドの名前付けにはキャメルケースが使用され、最初の文字は小文字またはアンダースコア「_」です (例: getUserName_parseType)。通常、アンダースコアで始まるメソッドはプライベート メソッドです。

属性はキャメルケースを使用して名前が付けられ、最初の文字は小文字または下線付きです。「_」 ( tableName_instance など)、通常は、アンダースコアはプライベート属性です。二重アンダースコア「__」で始まる関数またはメソッドは、

__call

__autoload などのマジック メソッドとして使用されます。

  • 定数は、
  • HAS_ONE
  • MANY_TO_MANY のように、大文字とアンダースコアで名前が付けられます。構成パラメーターは、大文字で名前が付けられます。 HTML_CACHE_ON などの文字とアンダースコア。言語変数は、MY_LANG など、大文字とアンダースコアで名前が付けられます。通常、アンダースコアで始まる言語変数は次の目的で使用されます。

    _CLASS_NOT_EXIST_ などのシステム言語変数

  • 変数の名前付けに必須の仕様はなく、チームの仕様に従うことができます
  • ThinkPHP のテンプレート ファイルのデフォルトは >.html
  • をサフィックスとして使用します (構成を通じて変更できます); データ テーブルとフィールドの名前は小文字で下線が付けられます。たとえば、フィールド名はアンダースコアで始まらないことに注意してください。 、
think_user🎜 テーブルと🎜 user_name フィールドは、🎜 _username🎜 フィールドのようなデータ テーブルと同様に正しく書き込まれます。フィールドはフィルタリングできます。 🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜プロセスステートメントの仕様🎜🎜🎜🎜🎜すべてのプロセスステートメントの中括弧は、別の行を占めます。理由: より複雑なビジネス ロジックに遭遇すると、中括弧が大量にネストされるため、対応する中括弧が混乱してしまいます。 🎜🎜🎜🎜1. ブランチステートメント🎜🎜
if($age >= 18 && $age <= 30) 
{
  echo &#39;young man&#39;;
}
else if($age > 30 && $age <= 60)
{
  echo &#39;middle aged&#39;;
}
else
{
  echo &#39;old man&#39;;
}
 
//下面这段代码高手我们一个问题,在if语句中,即使在可以不要花括号的情况下,花括号也是要写上的
if($age > 60)
{
  echo &#39;I am very old&#39;;
}
 
switch($status)
{
  case &#39;forbiden&#39;:
    echo &#39;login forbidden&#39;;
    break;
     
  case &#39;normal&#39;:
    echo &#39;login in&#39;;
    break;
     
  default:
    echo &#39;status is wrong&#39; :
    break;
}
🎜🎜2. ループステートメント🎜🎜
while($condition)
{
  statesments......;
}
 
foreach($arrayList as $arrayKey => $arrayItem)
{
  states......;
}
do
{
  statements......; 
}
while($condition)
 
 
for($start; condition; changenumber)
{
  statements......;
}
🎜一般に、開発プロセス中、次のルールに従うと開発が容易になります:🎜🎜🎜🎜フレームワークの命名規則とディレクトリ規則に従います 🎜🎜🎜🎜 問題を早期に検出するために、開発プロセス中にデバッグ モードをオンにするようにしてください 🎜🎜🎜🎜 入力変数を取得するために I 関数を使用する習慣を身に付けてください。 🎜🎜🎜アップデートまたは環境の変更後 問題が発生したときの最初の問題は、Runtime ディレクトリをクリアすることです。

以上がPHP コードとファイル命名規則の分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。