ホームページ バックエンド開発 PHPチュートリアル php函数、类跟对象以及类的封装、继承、类的静态方法、静态属性

php函数、类跟对象以及类的封装、继承、类的静态方法、静态属性

Jun 13, 2016 pm 12:23 PM
echo function method public url

php函数、类和对象以及类的封装、继承、类的静态方法、静态属性

1、函数

    php内置函数可以直接使用,如果没有安装php扩展即可

    自定义函数

<span style="color: #008000">//</span><span style="color: #008000">函数function  函数名 </span>    <span style="color: #0000ff">function</span> dump(<span style="color: #800080">$var</span> = <span style="color: #0000ff">null</span>){    <span style="color: #008000">//</span><span style="color: #008000">支出默认参数值</span>        <span style="color: #0000ff">echo</span> ‘<pre class="brush:php;toolbar:false">
ログイン後にコピー
’; var_dump($var); }

2、类(class)和对象( new Obj)

<span style="color: #000000">php </span><span style="color: #008000">//</span><span style="color: #008000">定义一个人的类,现在还不是对象</span> <span style="color: #0000ff">class</span><span style="color: #000000"> Person{ </span><span style="color: #008000">//</span><span style="color: #008000">私有属性 </span>
ログイン後にコピー
<span style="color: #008000">    </span><span style="color: #0000ff">private</span> <span style="color: #800080">$eye</span> = '大眼睛'<span style="color: #000000">;    </span><span style="color: #0000ff">private</span> <span style="color: #800080">$mouth</span> = '小嘴巴'<span style="color: #000000">;    </span><span style="color: #0000ff">private</span> <span style="color: #800080">$leg</span> = '大长腿'<span style="color: #000000">;                 </span><span style="color: #008000">//</span><span style="color: #008000">构造方法 new 对象的时候自定调用</span>    <span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> __construct()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__CLASS__</span><span style="color: #000000">;    }        </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> run()    {        </span><span style="color: #0000ff">echo</span>  <span style="color: #800080">$this</span>-><span style="color: #000000">leg;    }     </span><span style="color: #008000">//</span><span style="color: #008000">学习 会用到 腿(走路)、眼睛(看书)、嘴(念书)</span>    <span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> study()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #800080">$this</span>->leg, <span style="color: #800080">$this</span>->eye, <span style="color: #800080">$this</span>-><span style="color: #000000">mouth;    }                 }</span><span style="color: #008000">//</span><span style="color: #008000">使用类 new以后就变成了对象</span><span style="color: #800080">$person</span> = <span style="color: #0000ff">new</span> Person();          <span style="color: #008000">//</span><span style="color: #008000">输出 Person</span><span style="color: #800080">$person</span> -> run();                <span style="color: #008000">//</span><span style="color: #008000">输出  大长腿</span><span style="color: #800080">$person</span> -> study();             <span style="color: #008000">//</span><span style="color: #008000">输出  大长腿 大眼睛 小嘴唇</span>
ログイン後にコピー

3、类的封装(public, protected, private)和继承(extends)

<span style="color: #008000">//</span><span style="color: #008000">类的继承  </span><span style="color: #0000ff">class</span><span style="color: #000000"> A{    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> help()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }    </span><span style="color: #008000">//</span><span style="color: #008000">声明一个吃的方法 私有的</span>    <span style="color: #0000ff">private</span> <span style="color: #0000ff">function</span><span style="color: #000000"> eat()    {        </span><span style="color: #0000ff">echo</span>  <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }}</span><span style="color: #008000">//</span><span style="color: #008000">子类可以继承父类所有的公共方法和属性、受保护的方法和属性,私有方法除外//如果想使用,重写即可</span><span style="color: #0000ff">class</span> B <span style="color: #0000ff">extends</span><span style="color: #000000">  A{    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> doSomething()    {        </span><span style="color: #800080">$this</span> -> help();   <span style="color: #008000">//</span><span style="color: #008000">继承了父类的方法   前提是声明为public </span>        <span style="color: #0000ff">echo</span> '<hr>'<span style="color: #000000">;        </span><span style="color: #800080">$this</span> -> eat();    <span style="color: #008000">//</span><span style="color: #008000">因为吃是私有的,子类不能使用, 这里在子类中写了一个eat方法.</span><span style="color: #000000">    }    </span><span style="color: #008000">//</span><span style="color: #008000">子类的吃</span>    <span style="color: #0000ff">public</span> <span style="color: #0000ff">function</span><span style="color: #000000"> eat()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }}</span><span style="color: #800080">$b</span> = <span style="color: #0000ff">new</span><span style="color: #000000"> B;</span><span style="color: #800080">$b</span>->doSomething();
ログイン後にコピー
//输出结果
ログイン後にコピー

A::help


B::eat

4、类的静态方法和静态属性

<span style="color: #000000">php</span><span style="color: #008000">//</span><span style="color: #008000">定义一个Url 相关的类</span><span style="color: #0000ff">class</span><span style="color: #000000"> Url{    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span> createUrl(<span style="color: #800080">$arr</span> =<span style="color: #000000"> [])    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span> redirect(<span style="color: #800080">$url</span> = ''<span style="color: #000000">)    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span><span style="color: #000000"> getCurrentUrl()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }}</span><span style="color: #008000">//</span><span style="color: #008000">把方法声明成静态方法,不需要每次都实例化(new)对象,操作方便,节省内存,效率更高</span><span style="color: #0000ff">echo</span>  Url::createUrl(<span style="color: #800080">$var</span>=''<span style="color: #000000">);</span><span style="color: #0000ff">echo</span>  Url::redirect(<span style="color: #800080">$url</span>=''<span style="color: #000000">);</span><span style="color: #0000ff">echo</span>  Url::getCurrentUrl();
ログイン後にコピー

5、类的静态属性

<span style="color: #000000">php</span><span style="color: #008000">//</span><span style="color: #008000">定义一个Url 相关的类</span><span style="color: #0000ff">class</span><span style="color: #000000"> Url{    </span><span style="color: #008000">//</span><span style="color: #008000">声明为类常量</span>    <span style="color: #0000ff">const</span> URL = 'http://www.baidu.com'; <span style="color: #008000">//</span><span style="color: #008000">从5.3以后可以直接在类外部使用 const    //声明为静态变量</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #800080">$var</span> = 'it is very good'<span style="color: #000000">;    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span> createUrl(<span style="color: #800080">$arr</span> =<span style="color: #000000"> [])    {        </span><span style="color: #0000ff">echo</span> self::<span style="color: #000000">URL;        </span><span style="color: #0000ff">echo</span> '<br>'<span style="color: #000000">;        </span><span style="color: #0000ff">echo</span> self::<span style="color: #800080">$var</span><span style="color: #000000">;        </span><span style="color: #0000ff">echo</span> '<br>'<span style="color: #000000">;        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span> redirect(<span style="color: #800080">$url</span> = ''<span style="color: #000000">)    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }    </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">function</span><span style="color: #000000"> getCurrentUrl()    {        </span><span style="color: #0000ff">echo</span> <span style="color: #ff00ff">__METHOD__</span><span style="color: #000000">;    }}</span><span style="color: #008000">//</span><span style="color: #008000">把方法声明成静态方法,不需要每次都实例化(new)对象,操作方便,节省内存,效率更高</span><span style="color: #0000ff">echo</span>  Url::createUrl(<span style="color: #800080">$var</span>='');
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PHP 関数の紹介 - get_headers(): URL の応答ヘッダー情報を取得します PHP 関数の紹介 - get_headers(): URL の応答ヘッダー情報を取得します Jul 25, 2023 am 09:05 AM

PHP 関数の紹介 - get_headers(): URL の応答ヘッダー情報の取得の概要: PHP 開発では、Web ページまたはリモート リソースの応答ヘッダー情報を取得する必要があることがよくあります。 PHP 関数 get_headers() を使用すると、対象 URL の応答ヘッダー情報を簡単に取得し、配列の形式で返すことができます。この記事では、get_headers() 関数の使用法を紹介し、関連するコード例をいくつか示します。 get_headers() 関数の使用法: get_header

e からの NameResolutionError(self.host, self, e) の理由とその解決方法 e からの NameResolutionError(self.host, self, e) の理由とその解決方法 Mar 01, 2024 pm 01:20 PM

エラーの理由は、urllib3 ライブラリの例外タイプである NameResolutionError(self.host,self,e)frome です。このエラーの理由は、DNS 解決が失敗したこと、つまり、ホスト名または IP アドレスが試みられたことです。解決できるものが見つかりません。これは、入力された URL アドレスが間違っているか、DNS サーバーが一時的に利用できないことが原因である可能性があります。このエラーを解決する方法 このエラーを解決するにはいくつかの方法があります。 入力された URL アドレスが正しいかどうかを確認し、アクセス可能であることを確認します。 DNS サーバーが利用可能であることを確認します。コマンド ラインで「ping」コマンドを使用してみてください。 DNS サーバーが利用可能かどうかをテストします。プロキシの背後にある場合は、ホスト名の代わりに IP アドレスを使用して Web サイトにアクセスしてみてください。

いくつかの手順で Steam ID を取得するにはどうすればよいですか? いくつかの手順で Steam ID を取得するにはどうすればよいですか? May 08, 2023 pm 11:43 PM

現在、ゲームを愛する多くの Windows ユーザーが Steam クライアントにアクセスし、優れたゲームを検索、ダウンロードしてプレイすることができます。ただし、多くのユーザーのプロフィールがまったく同じ名前である可能性があるため、プロフィールを見つけたり、Steam プロフィールを他のサードパーティのアカウントにリンクしたり、Steam フォーラムに参加してコンテンツを共有したりすることさえ困難になります。プロファイルには一意の 17 桁の ID が割り当てられます。ID は変更されず、ユーザーがいつでも変更することはできませんが、ユーザー名またはカスタム URL は変更できます。いずれにせよ、一部のユーザーは自分の Steamid を知らないため、これを知ることが重要です。アカウントの Steamid を見つける方法がわからなくても、慌てる必要はありません。記事上で

機能とはどういう意味ですか? 機能とはどういう意味ですか? Aug 04, 2023 am 10:33 AM

ファンクションとは、関数を意味します。これは、特定の関数を備えた再利用可能なコード ブロックです。プログラムの基本コンポーネントの 1 つです。入力パラメータを受け取り、特定の操作を実行し、結果を返すことができます。その目的は、再利用可能なコード ブロックをカプセル化することです。コードの再利用性と保守性を向上させるコード。

htmlとurlの違いは何ですか htmlとurlの違いは何ですか Mar 06, 2024 pm 03:06 PM

相違点: 1. 定義が異なります。URL はユニフォーム リソース ロケーターであり、HTML はハイパーテキスト マークアップ言語です。 2. HTML には多数の URL を含めることができますが、URL 内に存在できる HTML ページは 1 つだけです。 3. HTML は is を指します。 Web ページ、url は Web サイトのアドレスを指します。

Java で URL エンコードとデコードを使用する方法 Java で URL エンコードとデコードを使用する方法 May 08, 2023 pm 05:46 PM

url を使用して、クラス java.net.URLDecoder.decode(url, decoding format) decoder.decoding メソッドのエンコードとデコードをエンコードおよびデコードします。通常の文字列に変換するには、URLEncoder.decode(url, エンコード形式) を使用して、通常の文字列を指定された形式の文字列に変換します。 packagecom.zixue.springbootmybatis.test;importjava.io.UnsupportedEncodingException;importjava.net.URLDecoder;importjava.net。 URLエンコーダ

PHP 致命的エラーの解決策: メンバー関数 fetch() の呼び出し PHP 致命的エラーの解決策: メンバー関数 fetch() の呼び出し Jun 23, 2023 am 09:36 AM

Web アプリケーション開発に PHP を使用する場合、多くの場合データベースを使用する必要があります。データベースを使用すると、エラー メッセージがよく発生します。その中でも、PHPFatalerror: Calltoamemberfunctionfetch() は、PDO を使用してデータベースをクエリするときに発生する比較的一般的なエラーです。では、このエラーの原因と解決方法は何でしょうか?この記事ではそれについて詳しく説明します。 1. エラーの原因

iOS の開発者バージョンとパブリック バージョンの違いは何ですか? iOS の開発者バージョンとパブリック バージョンの違いは何ですか? Mar 01, 2024 pm 12:55 PM

毎年、Apple が iOS と macOS の新しいメジャー バージョンをリリースする前に、ユーザーは数か月前にベータ版をダウンロードして最初に体験することができます。同ソフトウェアは一般ユーザーと開発者の両方が使用するため、Appleは開発者向けベータ版のパブリックベータ版である開発者版とパブリック版を両方向けに開始した。 iOS の開発者バージョンとパブリック バージョンの違いは何ですか?文字通りに言うと、開発者バージョンは開発者テスト バージョンであり、パブリック バージョンは公開テスト バージョンです。開発者バージョンとパブリック バージョンは、異なるユーザーを対象としています。開発者バージョンは、Apple が開発者によるテストのために使用します。ダウンロードしてアップグレードするには、Apple 開発者アカウントが必要です。

See all articles