PHP面向对象学习笔记之一 基础概念_PHP
1> if( "false" ) 等效于 if( true), 因为非空字符串是true
2> 检查数据类型:
is_array();
is_object();
is_string();
is_null();
is_integer();
3> PHP5 引入类的类型提示(type hint),用来约束一个方法的参数类型(不是基本数据类型,而是类):将类名放在需要约束的方法参数之前.
例如: function write( ShopProduct $shopProduct){}
4> instanceof 操作符: 如果左边操作数的对象是右边操作数所示的类型,结果为true
例如: if( $shopProduct instanceof BookProduct ) {}
5> 继承 class son extends parent{}
要调用父类的方法, 比如构造函数,用 parent::__construct();
6> 静态方法和属性
class StaticExample{
static public $a;
static public function hello(){}
}
外部访问使用::
例如: print StaticExample::$a;
内部访问使用self::
例如: self::$a;
7> 抽象类, 抽象方法
abstract class xxx{
...
abstract function write(); //没有{}
}
抽象类的子类要重新声明方法并实现之. 新实现的方法的访问控制不能比抽象方法的访问控制更严格.
8>接口 interface
只定义功能,不包含实现. 接口中可以包含属性和方法声明,但方法体为空;
例如: interface a{
public function b();
}
任何实现接口的类都要实现接口中定义的所有方法,否则就必须是抽象类.
类在声明中使用implements来实现某个接口.
class Shop implements a{
public function b(){
...
}
}
9> 异常 exception
PHP5引入异常类
10>拦截器 interceptor
__get($property); 访问未定义的属性时被调用
__set($property,$value); 给未定义的属性赋值时被调用
__isset($property); 对未定义的属性使用isset()时被调用;
__unset($property);对未定义的属性调用unset()时被调用;
__call($method, $arg_array); 调用未定义的方法时候被调用
例: __get()的实现
复制代码 代码如下:
function __get($property){
$method="get{$property}";
if(method_exists($this,$method)){
return $this->$method();
}
}
function getName(){ return "Bob";}
function __isset($property){
$method="get{$porperty}";
return(method_exists($this, $method));
}
function __set($property, $value){
$method="set{$property}";
if( method_exists($this,$method)){
return $this->$method($value);
}
}
11> 析构方法 __destruct()
12> __clone(); 与clone关键字的区别
class CopyMe();
$first= new CopyMe();
$second=$first;
// PHP4 : $first和$second是两个完全不同的对象;
// PHP5: $first和$second指向同一个对象
PHP5中, 对象的赋值和传递都是引用.
如果要拷贝,就要用: $second= clone $first; //现在$first和$second是两个完全不同的对象,(by_value copy)
如果要想控制复制, 要通过实现一个特殊方法__clone()
13> 自动加载: __autoload()
PHP5引入__autoload()拦截器方法来自动包含类文件.当PHP遇到试图实例化一个未知类的操作时,会尝试调用__autoload()方法,并将类名当作字符串参数传递给它.
例如一个很简单的自动定位和包含策略:
function __autoload( $classname){
includ_once "$classname.php";
}
====================
14>使用字符串动态引用类
复制代码 代码如下:
$classname="Task";
require_once("tasks/{$classname}.php);
$myObj= new $classname();
$method="getTitle";
$myObj->$method(); //动态方法
15>类函数和对象函数
复制代码 代码如下:
class_exist(); //检查类是否存在
get_declared_classes(); //获得当前脚本进程中定义的所有类(array形式返回)
get_class_methods();//类中所有的public方法列表(array)
method_exist($objname,$method); //对象或类的方法是否存在
is_callable();//对象或类的方法不仅存在,且能访问
get_class_vars(); // 属性
get_parent_class(类或对象名称); //父类
is_subclass_of(); //是否子类,不管接口,接口用 instanceof操作符
16>反射API
由一系列可以分析属性、方法、类和参数的内置类构成,可以动态获取信息,动态调用方法.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tafsiran mendalam tentang pengkapsulan berorientasikan objek PHP Pengkapsulan ialah salah satu daripada tiga ciri utama pengaturcaraan berorientasikan objek Ia merujuk kepada merangkum data dan operasi pada data dalam kelas, menyembunyikan butiran pelaksanaan khusus daripada program luaran, dan menyediakan antara muka luaran. Dalam PHP, konsep enkapsulasi dilaksanakan dengan menggunakan pengubah akses (awam, dilindungi, persendirian) untuk mengawal kebolehcapaian sifat dan kaedah. Mula-mula, mari kita lihat peranan pengubah akses: awam (awam): Harta dan kaedah awam boleh

Cara melaksanakan kawalan dan pengurusan versi objek melalui model kilang mudah berorientasikan objek PHP Apabila membangunkan projek PHP yang besar dan kompleks, kawalan dan pengurusan versi adalah sangat penting. Melalui corak reka bentuk yang sesuai, kami boleh mengurus dan mengawal penciptaan dan penggunaan objek dengan lebih baik, dengan itu meningkatkan kebolehselenggaraan dan kebolehskalaan kod. Artikel ini akan memperkenalkan cara menggunakan corak kilang mudah berorientasikan objek PHP untuk melaksanakan kawalan dan pengurusan versi objek. Corak kilang yang ringkas ialah corak reka bentuk untuk mencipta kelas yang membuat instantiate objek tertentu melalui kelas kilang

Dengan perkembangan pesat bahasa pengaturcaraan moden, Golang telah menjadi bahasa pilihan untuk lebih ramai orang. Sebagai salah satu konsep asas dalam bahasa Golang, fungsi menyediakan sokongan alat yang berkuasa untuk pengaturcara. Artikel ini akan menerangkan secara terperinci takrifan, parameter, nilai pulangan, skop dan konsep asas lain bagi fungsi Golang, serta beberapa senario dan teknik aplikasi lanjutan, untuk membantu pembaca memahami dan menggunakan fungsi Golang dengan lebih baik. 1. Definisi fungsi Fungsi ialah konsep asas dalam Golang Ia merupakan perenggan yang boleh diulang

Cara mencipta tika objek fleksibel menggunakan corak kilang mudah berorientasikan objek PHP Corak kilang ringkas ialah corak reka bentuk biasa yang mencipta tika objek tanpa mendedahkan logik penciptaan objek. Mod ini boleh meningkatkan fleksibiliti dan kebolehselenggaraan kod, dan amat sesuai untuk senario di mana objek berbeza perlu dicipta secara dinamik berdasarkan keadaan input. Dalam PHP, kita boleh menggunakan ciri-ciri pengaturcaraan berorientasikan objek untuk melaksanakan corak kilang yang mudah. Mari lihat contoh di bawah. Katakan kita perlu mencipta kalkulator grafik yang boleh

Dengan perkembangan Internet, PHP secara beransur-ansur menjadi salah satu bahasa pengaturcaraan yang paling popular dalam pembangunan web. Walau bagaimanapun, dengan perkembangan pesat PHP, pengaturcaraan berorientasikan objek telah menjadi salah satu kemahiran yang diperlukan dalam pembangunan PHP. Dalam artikel ini, kita akan membincangkan cara menguasai kemahiran pengaturcaraan berorientasikan objek dalam pembangunan PHP. Memahami Konsep Pengaturcaraan Berorientasikan Objek Pengaturcaraan berorientasikan objek ialah paradigma pengaturcaraan yang mengatur kod dan data melalui penggunaan objek (kelas, sifat dan kaedah). Dalam pengaturcaraan berorientasikan objek, kod disusun ke dalam modul yang boleh digunakan semula, dengan itu menambah baik program itu

Bahasa Go ialah bahasa pengaturcaraan serentak yang berprestasi tinggi pemalar; menyediakan penyata aliran kawalan standard melalui kata kunci func melalui penyataan import; Kes praktikal menunjukkan penjanaan jujukan Fibonacci dan mendalami pemahaman konsep ini.

Kemasukan PHP ke lanjutan - pelajari sintaks dan konsep asas Pengenalan: PHP (Hypertext Preprocessor) ialah bahasa skrip sebelah pelayan yang popular digunakan secara meluas dalam pembangunan Web. Dalam artikel ini, kita akan bermula dari peringkat kemasukan, secara beransur-ansur mempelajari sintaks asas dan konsep PHP secara mendalam, dan menyediakan contoh kod untuk rujukan anda. 1. Pemasangan dan konfigurasi PHP Sebelum mula mempelajari PHP, anda perlu memasang PHP pada mesin anda terlebih dahulu. Anda boleh memuat turunnya dari laman web rasmi (https://w

Memahami Mekanisme Pewarisan Berorientasikan Objek Pewarisan PHP ialah konsep penting dalam pengaturcaraan berorientasikan objek, yang membolehkan penciptaan kelas baharu yang merangkumi ciri dan kefungsian kelas lama. Dalam PHP, warisan boleh dicapai melalui kata kunci meluas. Melalui warisan, subkelas boleh mewarisi sifat dan kaedah kelas induk, dan boleh menambah sifat dan kaedah baharu, atau mengatasi kaedah yang diwarisi. Marilah kita memahami mekanisme pewarisan berorientasikan objek PHP melalui contoh. classAnimal{public$name
