


PHP object-oriented study notes one Basic concepts_PHP tutorial
1> if( "false" ) is equivalent to if( true), because a non-empty string is true
2> Check the data type:
is_array();
is_object();
is_string ();
is_null();
is_integer();
3> PHP5 introduces class type hints (type hints), which are used to constrain the parameter type of a method (not the basic data type, but the class ): Put the class name before the method parameters that need to be constrained.
For example: function write( ShopProduct $shopProduct){}
4> instanceof operator: If the object of the left operand is the right operand The type shown, the result is true
For example: if( $shopProduct instanceof BookProduct ) {}
5> Inherit class son extends parent{}
To call the method of the parent class, such as the constructor , use parent::__construct();
6> Static methods and properties
class StaticExample{
static public $a;
static public function hello(){}
}
External access uses::
For example: print StaticExample::$a;
Internal access uses self::
For example: self::$a;
7> Abstract class , abstract method
abstract class xxx{
...
abstract function write(); //No {}
}
Subclasses of abstract classes must re-declare methods and Implementation. The access control of newly implemented methods cannot be stricter than the access control of abstract methods.
8>Interface interface
only defines functions and does not include implementation. The interface can contain attribute and method declarations, But the method body is empty;
For example: interface a{
public function b();
}
Any class that implements an interface must implement all methods defined in the interface, otherwise it must be abstract Class.
A class uses implements in the declaration to implement an interface.
class Shop implements a{
public function b(){
...
}
}
9> exception exception
PHP5 introduces exception class
10> interceptor interceptor
__get($property); is called when accessing undefined properties
__set($property ,$value); Called when assigning a value to an undefined property
__isset($property); Called when using isset() for an undefined property;
__unset($property); Called for an undefined property Called when unset() is called;
__call($method, $arg_array); Called when an undefined method is called
Example: Implementation of __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 ; 🎜>class CopyMe();
$first= new CopyMe();
$second=$first;
// PHP4: $first and $second are two completely different objects;
In PHP5, object assignment and transfer are references.
If you want to copy, you need to use: $second= clone $first; //Now $ first and $second are two completely different objects, (by_value copy)
If you want to control copying, you must implement a special method __clone()
13> Automatic loading: __autoload()
PHP5 introduces the __autoload() interceptor method to automatically include class files. When PHP encounters an operation that attempts to instantiate an unknown class, it will try to call the __autoload() method and pass the class name as a string parameter. Give it.
For example a very simple automatic positioning and inclusion strategy:
function __autoload( $classname){
include_once "$classname.php";
}
== ==================
14>Use string to dynamically reference classes
Copy code
Code As follows:
$classname="Task";
require_once("tasks/{$classname}.php);
Copy code
The code is as follows:
class_exist(); //Check whether the class exists
get_declared_classes(); //Get all classes defined in the current script process ( Returned in array form)
16> Reflection API
consists of a series of built-in classes that can analyze properties, methods, classes and parameters, and can dynamically obtain information and dynamically call methods.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
