Classes in PHP
Before elaborating on the concept of classes, let’s first talk about the concept of object-oriented programming: Object-Oriented Programming (OOP) is based on creating software reusable code with the ability to better simulate real-world environments. , which makes it recognized as the winner of top-down programming. It "encapsulates" functions into "objects" necessary for programming by adding extended statements to the program. Object-oriented programming languages make complex work clear and easy to write. It's a revolution, not in the objects themselves, but in their ability to handle work. Objects are not compatible with traditional programming and programming methods, and being partially object-oriented makes the situation worse. Unless the entire development environment is object-oriented, the benefits of objects may not be as great as the trouble. Some people may say that PHP is not a true object-oriented programming language. PHP is a hybrid language. You can use object-oriented programming or traditional procedural programming. However, for the development of large projects, you may want to use pure object-oriented programming in PHP to declare classes, and only use objects and classes in your project development. As projects get larger, it may be helpful to use object-oriented programming. Object-oriented programming code is easy to maintain, easy to understand and reuse, which are the basics of software engineering. Applying these concepts in web-based projects becomes the key to future website success.
An object is an abstraction of something in the problem domain or implementation domain. It reflects the information that this thing needs to save and the role it plays in the system; it is a set of attributes and the right to control these things. An encapsulation of a set of services that properties operate on. Objects should be understood from two aspects: on the one hand, they refer to objects in the real world that the system needs to process; on the other hand, objects are objects that the computer does not process directly, but processes corresponding computer representations. This computer representation is also called an object. To put it simply, a person is an object, and a ruler can also be said to be an object. When these objects can be directly represented by data, we call them attributes. The measurement unit of the ruler can be centimeters, meters or feet. This measurement unit is the attribute of the ruler.
In PHP we can define a class. A class refers to a collection of variables and some functions that use these variables. PHP is a loosely typed language, so overloading by type does not work, nor does overloading by different numbers of parameters. Sometimes it's good to overload constructors in an orientation so that you can create objects in different ways (passing different numbers of arguments). In PHP, this is achieved through classes.
In PHP, information encapsulation is completed through classes. The syntax for defining a class in PHP is:
class Class_name // In object-oriented programming classes, it is customary for the first character of a class to be Uppercase and must comply with variable naming rules.
{
//A collection of functions and variables
}
?>
When defining a class, you can define it in the format of your preference , but it is best to maintain a standard so that development will be more efficient.
Data members are defined using the "var" declaration in the class. Before the data members are assigned a value, they have no type. A data member can be an integer, an array, an associated array (Associative Array) or an object.
The following is a practical example of a class definition:
class Student
{
var $str_Name; //Name
var $str_Sex; //Gender
var $int_Id ; //Student number
var $int_English; //English score
var $int_maths; //Math score
}
?>
This is a very common definition class A simple example is used to display students' academic performance. The class name is Student. The Student class contains a student's basic attributes: name, gender, student number, English score and math score.
function is called a function defined in a class. When accessing class member variables in a function, you should use $this->var_name, where var_name refers to the variable declared in the class. Otherwise, for a function, it can only be a local variable.We first define an Input() function to assign an initial value to the object in the instance:
function Input ($Name, $Sex, $Id, $Englis, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$this->int_Englis=$English;
$this->int_Maths=$Maths;
}
Now we define a function called "ShowInfo()" to print the basic information of students: ) //Define the ShowInfo() function
{
echo ("Name: $this->str_Name
");
echo ("Gender: $this->str_Sex
”);
echo (“Student ID: $this->int_Id
”);
echo (“English score: $this->int_English
");
echo ("Math score: $this->int_Maths
");
}
The defined class must use the new key Words to generate objects:
$A_student=new Student;
For example, if we want to create an instance of an object named $Wing and assign a value, we can use the following code:
$Wing =new Student; //Use the new keyword to generate objects
$Wing ->Input ("Wing","Male",33,95,87);
//Input Wing's name, gender, student number, For English scores and math scores, name and gender are character variables, so double quotes are required, while other numeric variables do not.
Through the complete source code below, we can clearly see how classes are used in PHP:
class Student
{
var $str_Name ;
var $str_Sex;
var $int_Id;
var $int_English;
var $int_maths;
function Input ( $Name, $Sex, $Id, $English, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$ this->int_English=$English;
$this->int_Maths=$Maths; str_Name
”);
echo (“Gender: $this->str_Sex
”);
echo (“Student ID: $this->int_Id
”);
echo (“English score: $this->int_English
”);
echo (“Math score: $this->int_Maths
");
}
}
$Wing = new Student;
$Wing->Input ("Wing","Male",33,95, 87);
$Paladin = new Student;
$Paladin->Input ("paladin","female",38,58,59.5);
$Wing->ShowInfo( );
$Paladin->ShowInfo();
?>
The execution result should be like this:
Name: Wing
Gender: Male
Student ID :33
English score: 95
Math score: 87
Name: Paladin
Gender: Female
Student number: 38
English score: 58
Math score: 59.5
The existing version of PHP has greatly improved its support for object-oriented programming compared with previous versions, but the support is not yet complete. However, at this stage, PHP provides not only support for object-oriented programming languages It is helpful for us to design the structure of the program and can also provide great help for the maintenance of the program.
Full text from: cngnu
http://www.bkjia.com/PHPjc/314517.html