PHP魔术方法__GET、__SET使用实例
这篇文章主要介绍了PHP魔术方法__GET、__SET使用实例,本文在代码中做了详细的注释,需要的朋友可以参考下
__get() - 读取不可访问属性的值时,__get() 会被调用。
__set() - 在给不可访问属性赋值时,__set() 会被调用。
复制代码 代码如下:
/**
* 清晰的认识__get() __set()
*/
class Example {
//公有的属性
public $public = 'pub' ;
//受保护的 - 子类中该属性可用
protected $protected = 'pro';
//私有的 - 只能此类使用此属性
private $private = 'pri';
//当访问对象中的属性不存在或者非公有属性的时候自动加载__get()方法
public function __get($name){
return '调用__get()方法:'.$name;
}
//当给对象的一个属性赋值的时候如果该属性不存在或者是非公有属性则自动加载__set()方法
public function __set($name,$value){
echo "\nname:".$name.',value:'.$value."\n";
}
}
$example = new Example;
echo '
';<br> echo $example->public."\n";<br> echo $example->protected."\n";<br> echo $example->private."\n";<br> echo $example->other."\n";<br> echo '<hr>';<br> $example->public = 'lic'; //这个赋值成功所有没有显示<br> $example->protected = 'tec';<br> $example->private = 'vat';<br> $example->other = 'er';<br> echo '<br>';<br> echo '打印 public 属性:'.$example->public;<br> <p>结果如下:</p> <p></p><p><span>复制代码</span> 代码如下:</p><p><br> pub<br> 调用__get()方法:protected<br> 调用__get()方法:private<br> 调用__get()方法:other</p> <p>name:protected,value:tec</p> <p>name:private,value:vat</p> <p>name:other,value:er</p> <p>打印 public 属性:lic<br> </p> ,

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
