検索
ホームページバックエンド開発PHPチュートリアルPHP でのオブジェクト指向の実践 - 基本的な実践ケース

PHP におけるオブジェクト指向の実践 - 基本的な実践

(1) 基本的な実践

1. クラスの概念

PHP でのオブジェクト指向の実践 - 基本的な実践ケース

1. 共通点:

すべてが同じ属性を持つ

すべて同じメソッドがあります

2. 違い:

特定の値が異なります

#3. 要約: それらはすべてですクラスのオブジェクト

クラスと言えば、クラスの概念について話しましょう

1) クラス定義

-物は集まり、人は分かれると言います。類似した特性を持つオブジェクトをクラスに分類する

したがって、オブジェクトを観察するときに、そのプロパティとメソッドを比較してみてください。それらのプロパティとメソッドが非常に似ている場合は、それらを 1 つのクラスに分類することができます。

- このクラスは、これらの同様のオブジェクトが同じプロパティとメソッドを持つことを定義します。

例: NBA プレーヤーはクラスの定義であり、NBA プレーヤーである限り、次のことを規定します。必須項目: 年齢、名前、身長、体重、チーム、プレーヤー番号

そうすれば、同じスキルも持つことになります:

PHP でのオブジェクト指向の実践 - 基本的な実践ケース

しかし問題は、このクラスに特定の高さは定義されていますか、特定の名前はありますか、特定の体重はありますか、どれもありませんが、これらの属性をすべて記述すると、特定の属性になりますか? オブジェクト

Thisクラスとオブジェクトの関係です。具体的には、クラスは類似したオブジェクトの説明です。これはクラスの定義と呼ばれます。クラスは、これらすべての類似したオブジェクトの設計図またはプロトタイプです。

たとえば、次のようになります。 James のオブジェクトはどこから来ましたか? このクラスの属性値を設定するだけです。

クラスのオブジェクトは、クラスの

instance(Instance)<strong></strong> です。これこの操作は、クラスのインスタンス化とも呼ばれます。#たとえば、ジェームズ、ジョーダン、コービーはすべて、NBA プレーヤー クラスのインスタンスです。これらをインスタンス化するプロセスは、クラスのインスタンス化と呼ばれます。

クラスの場合は、それは単なる空の棚であるという理解です。オブジェクトがどのように分割されるかを定義するだけです。オブジェクトについては、定義されます。特定の値については、すべての属性値を詳細に記述する必要があります。

補足概念: クラスのオブジェクトとメソッドを総称してクラス メンバーと呼びます

#2. インスタンス化の概念

1) クラスのインスタンス化の定義

は、クラスを通じて特定のオブジェクトを作成することです。このプロセスはクラスのインスタンス化であり、この空の棚を埋めることに相当します。例: たとえば、NBA プレーヤー クラスを通じて、ジェームズとコービー ブライアント、ジョーダンを作成しました。このうち、NBA プレーヤー クラスは 3 回インスタンス化されました

要約: 存在するのは 1 つだけですクラスですが、複数回インスタンス化して複数の特定のオブジェクトを取得することができます。

PHP でのオブジェクト指向の実践 - 基本的な実践ケースヒント: 実装方法については、後のコードで説明します

2) クラスのインスタンス化

2) 例: Jordan を例にします

左側はデータのないクラス、右側は Jordan です。したがって、インスタンス化する方法は次のとおりです。これらの名前、身長、体重、チーム、選手を直接追加するには、数値の値を具体的に入力すると、Jordan オブジェクトがインスタンス化されます。

PHP でのオブジェクト指向の実践 - 基本的な実践ケースヒント: インスタンス化は、作成することと理解できます。クラスを実際の例に変換

##3. 特定のケース

1) ケーススタディの目的

##1. クラスの定義方法2. クラスをインスタンス化する方法

3. クラスのプロパティとメソッドを呼び出す方法

2) 詳細については、次のコードを参照してください

<?php
/***
 * 案例目标:
 *  1.类的定义
 *  2.类的实例化
 *  3.属性的赋值
 *  4.方法的调用
 *  
 */
/***定义一个类,类的名字叫NbaPlayer(中文=NBA球员)
 * 提示:
 *  1.定义类的过程:我们首先以class开始,然后写上类 名称:NbaPlayer,最后要写上一对{}
 *  2.类的名字通常首字母要大写
 *  3
 * 
***/
class NbaPlayer{
    //定义属性
    public $name = "";
    public $height = "";
    public $weight = "";
    public $team = "";
    public $playerName = "";
    //定义方法
    //定义跑的方法
    //提示:
      //方法定义的过程:
        //1.写上方法的类型,public,表示公共的方法,可以被外部直接调用
        //2.写上function
        //3.定义方法的名称,然后写上一对(),最后{}结尾     
    //总结:
        //方法定义和之前js中函数的定义是一样的,只是类中的方法多了一个public
    public function run(){
        //里面的代码我们称之为业务逻辑
        echo "跑步<br/>";
    }
    //定义跳跃方法
    public function jump(){
        echo "跳跃<br/>";
    }
    //定义运球方法
    public function dribble(){
        echo "运球<br/>";
    }
    //定义投篮的方法
    public function shoot(){
        echo "投篮<br/>";
    }
    //定义扣篮方法
    public function dunk(){
        echo "扣篮<br/>";
    }
    //定义传球
    public function pass(){
        echo "传球<br/>";
    }
} 
//类到对象的实例化
/*总结:
    1、类的实例化过程= 通过new 类名() 即可完成一个类的实例化过程
*/
//1.创建乔丹
$jordan = new NbaPlayer();//类的实例化
//类赋值
$jordan->name = "乔丹";
$jordan->height = "1.98米";
$jordan->weight = "98公斤";
$jordan->team = "公牛";
$jordan->playerName = "23";
//输出对象值
print_r("乔丹名称:".$jordan->name."<br/>");
print_r("乔丹身高:".$jordan->height."<br/>");
//总结:通过->可以调用对象里的属性
echo "<br/>";
//输出对象方法
$jordan->dribble();
$jordan->pass();
//总结:通过->符号可以调用对象的方法
?>

以上がPHP でのオブジェクト指向の実践 - 基本的な実践ケースの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
絶対的なセッションタイムアウトとアイドルセッションのタイムアウトの違いは何ですか?絶対的なセッションタイムアウトとアイドルセッションのタイムアウトの違いは何ですか?May 03, 2025 am 12:21 AM

絶対セッションのタイムアウトはセッションの作成時に開始され、アイドルセッションタイムアウトはユーザーの操作なしに開始されます。絶対セッションタイムアウトは、金融アプリケーションなど、セッションライフサイクルの厳格な制御が必要なシナリオに適しています。アイドルセッションタイムアウトは、ソーシャルメディアなど、ユーザーが長い間セッションをアクティブに保つことを望んでいるアプリケーションに適しています。

セッションがサーバーで機能していない場合、どのような措置を講じますか?セッションがサーバーで機能していない場合、どのような措置を講じますか?May 03, 2025 am 12:19 AM

サーバーセッションの障害は、手順に従って解決できます。1。セッションが正しく設定されていることを確認するために、サーバーの構成を確認します。 2.クライアントCookieを確認し、ブラウザがそれをサポートしていることを確認し、正しく送信します。 3. Redisなどのセッションストレージサービスを確認して、それらが正常に動作していることを確認します。 4.アプリケーションコードを確認して、正しいセッションロジックを確認します。これらの手順を通じて、会話の問題を効果的に診断および修復し、ユーザーエクスペリエンスを改善することができます。

session_start()関数の重要性は何ですか?session_start()関数の重要性は何ですか?May 03, 2025 am 12:18 AM

session_start()iscrucialinphpformangingusersions.1)itInitiateSanewsessionifnoneExists、2)resumesanexistingsession、および3)SetSessionCookieforcontinuityAcrossRequests、ApplicationslicationSliviseSlikeUserauthicationAnticatent。

セッションクッキーにHTTPonlyフラグを設定することの重要性は何ですか?セッションクッキーにHTTPonlyフラグを設定することの重要性は何ですか?May 03, 2025 am 12:10 AM

HTTPonlyフラグを設定することは、XSS攻撃を効果的に防止し、ユーザーセッション情報を保護することができるため、セッションCookieにとって重要です。具体的には、1)HTTPONLYフラグは、JavaScriptがCookieにアクセスするのを防ぎます。2)Flagは、PHPとFlaskのSetCookiesとMake_Responseを介して設定できます。

PHPセッションはWeb開発でどのような問題を解決しますか?PHPセッションはWeb開発でどのような問題を解決しますか?May 03, 2025 am 12:02 AM

phpsessionssolvetheprobrof of maintainsea crossmultiplehttprequestsbyStoringdataontaonsociatingitiTauniquesessionid.1)それらは、通常はヨーロッパの側面、および一般的には、測定されている

どのデータをPHPセッションに保存できますか?どのデータをPHPセッションに保存できますか?May 02, 2025 am 12:17 AM

phpssionscanStorestrings、numbers、arrays、andobjects.1.strings:textdatalikeusernames.2.numbers:integersorfloatsforcounters.3.arrays:listslikeshoppingcarts.4.objects:complextructuresthataresialized。

どのようにPHPセッションを開始しますか?どのようにPHPセッションを開始しますか?May 02, 2025 am 12:16 AM

tostartaphpsession、outsession_start()atthescript'sbeginning.1)placeitbe foreanyouttosetthesscookie.2)usesionsionsionsionserdatalikelogintatussorshoppingcarts.3)再生セッションインドストップレベントフィックスアタック

セッションの再生とは何ですか?また、セキュリティをどのように改善しますか?セッションの再生とは何ですか?また、セキュリティをどのように改善しますか?May 02, 2025 am 12:15 AM

セッション再生とは、新しいセッションIDを生成し、セッション固定攻撃の場合にユーザーが機密操作を実行するときに古いIDを無効にすることを指します。実装の手順には次のものが含まれます。1。感度操作を検出、2。新しいセッションIDを生成する、3。古いセッションIDを破壊し、4。ユーザー側のセッション情報を更新します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

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

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター