ホームページ > バックエンド開発 > PHPの問題 > phpのクラスってどういう意味ですか?

phpのクラスってどういう意味ですか?

青灯夜游
リリース: 2023-02-27 13:52:02
オリジナル
4242 人が閲覧しました

phpのクラスってどういう意味ですか?

PHP におけるクラス (Class) は、変数とその変数に作用する関数の集合であり、同じ属性と操作を持つオブジェクトの集合です。これは、このクラスに属するすべてのオブジェクトに対して統一された抽象的な説明を提供します。これには、属性と操作という 2 つの主要な部分が含まれます。

PHP は型指定が緩い言語であるため、型によるオーバーロードや、異なる数のパラメーターによるオーバーロードは機能しません。場合によっては、さまざまな方法 (さまざまな数の引数を渡す) でオブジェクトを作成できるように、ある方向でコンストラクターをオーバーロードするとよいことがあります。 PHP では、これはクラスを通じて実現されます。

PHP では、情報のカプセル化はクラスによって完了します。PHP でクラスを定義するための構文は次のとおりです:

<?php
class Class_name       // 在面向对象编程类中,习惯上类的第一个字符为大写,并且必须符合变量的命名规则。
{
//函数与变量的集合
}
?>
ログイン後にコピー

クラスを定義するときは、独自の好みの形式で定義できます。ただし、開発をより効率的に行うためには、標準を維持することが最善です。
データ メンバーはクラス内の var 宣言を使用して定義されます。データ メンバーに値を割り当てる前は、データ メンバーには型がありません。データ メンバーは、整数、配列、関連配列 (連想配列)、またはオブジェクトにすることができます。
次は、クラス定義の実際的な例です:

<?php 
class Student 
{
var $str_Name; //姓名
var $str_Sex; //性别
var $int_Id; //学号
var $int_English;  //英语成绩
var $int_maths; //数学成绩
}
?>
ログイン後にコピー

これは、学生の学業成績を表示するために使用される、非常に一般的なクラス定義の簡単な例です。クラス名は Student です。 Student クラスは、生徒の基本属性 (名前、性別、生徒番号、英語のスコア、数学のスコア) をカバーします。

関数 これをクラスで定義された関数と呼びます。関数内のクラス メンバー変数にアクセスするときは、$this->var_name を使用する必要があります。ここで、var_name はクラスで宣言された変数を指します。それ以外の場合は、関数の場合、ローカル変数のみにすることができます。まず、Input() 関数を定義して、インスタンス内のオブジェクトに初期値を割り当てます。

function  Input ( $Name, $Sex, $Id, $Englis, $Maths)
{
         $this->str_Name=$Name;
         $this->str_Sex =$Sex;
         $this->int_Id =$Id;
         $this->int_Englis=$English;
$this->int_Maths=$Maths;
       }
ログイン後にコピー

次に、生徒に表示するための「ShowInfo()」という関数を定義します。 基本的な状況:

function ShowInfo()  //定义ShowInfo()函数
    {
echo (“姓名:$this->str_Name<br> 
”);
echo (“性别:$this->str_Sex <br> 
”);
echo (“学号:$this->int_Id <br> 
”);
echo (“英语成绩:$this->int_English <br> 
”);
echo (“数学成绩:$this->int_Maths <br> 
”);
    }
ログイン後にコピー

定義されたクラスは、オブジェクトを生成するために new キーワードを使用する必要があります:

$A_student=new Student;
ログイン後にコピー

たとえば、$Wing という名前のオブジェクトのインスタンスを作成したいとします。割り当ての場合は、次のようにすることができます。次のコードを使用します:

$Wing =new Student;  //用new关键词来生成对象
$Wing ->Input (“Wing”,”男”,33,95,87); 
//分别输入Wing的姓名、性别、学号、英语成绩、数学成绩,其中姓名和性别是字符型变量,所以需要用双引号,其它为数值型变量则不需要。
ログイン後にコピー

以下の完全なソース コードを通して、PHP でクラスがどのように使用されるかを明確に見ることができます:

<?php 
class Student 
{
var $str_Name; 
var $str_Sex; 
var $int_Id; 
var $int_English;  
var $int_maths; 
    function  Input ( $Name, $Sex, $Id, $English, $Maths)
       {
         $this->str_Name=$Name;
         $this->str_Sex =$Sex;
         $this->int_Id =$Id;
         $this->int_English=$English;
$this->int_Maths=$Maths;
} 
function ShowInfo()  
    {
echo (“姓名:$this->str_Name<br> 
”);
echo (“性别:$this->str_Sex <br> 
”);
echo (“学号:$this->int_Id <br> 
”);
echo (“英语成绩:$this->int_English <br> 
”);
echo (“数学成绩:$this->int_Maths <br> 
”);
    }
   } 
  $Wing = new Student;
  $Wing->Input (“Wing”,”男”,33,95,87);
  $Paladin = new Student;
  $Paladin->Input (“paladin”,”女”,38,58,59.5);
$Wing->ShowInfo();
$Paladin->ShowInfo();
?>
ログイン後にコピー

実行結果は次のようになります。 :

姓名:Wing
性别:男 
学号:33 
英语成绩:95 
数学成绩:87 
姓名:Paladin
性别:女 
学号:38 
英语成绩:58 
数学成绩:59.5
ログイン後にコピー

PHP の既存のバージョンは、以前のバージョンと比較してオブジェクト指向プログラミングのサポートを大幅に改善しましたが、まだ完全ではありませんが、PHP が提供するオブジェクト指向のサポートをサポートしていますこの段階でのプログラミング言語は、プログラムの構造を設計するのに役立つだけでなく、プログラムのメンテナンスにも役立ちます。

PHP 関連の知識について詳しくは、php中文网 をご覧ください。

以上がphpのクラスってどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート