Hướng dẫn classes in php tutorialspoint
IntroductionClass is a user defined data type in PHP. In order to define a new class, PHP provides a keyword class, which is followed by a name. Any label that is valid as per PHP's naming convention (excluding PHP's reserved words) can be used as name of class. Constituents of class are defined in curly bracket that follows name of class Syntaxclass myclass{ // } Class may contain constants, variables or properties and methods - which are similar to functions Example of classThis example shows how a Class is defined Examplevar1; } } ?> Function defined inside class is called method. Calling object's context is available inside a method with a pseudo-variable $this. If method is defined as static, it is accessed with name of class. Calling a non-static method statically has been deprecated in PHP 7 The new operator declares a new object of given class. ame of class followed by paentheses should be mentioned in front of new keyword. An uninitialized object (or with default values to properties) is created if there are no arguments inside parentheses. If class provides definition of constructor with parameters, matching number of arguments must be given. Class must be defined before creating instance (or object) ExampleLive Demo var1; } } $obj=new myclass(); $obj->dispvar(); ?> OutputThis will produce following result. − Hello
Updated on 18-Sep-2020 09:47:28
PHP 7 is the most awaited and is a major feature release of PHP programming language. PHP 7 was released on 3rd Dec 2015. This tutorial will teach you the new features of PHP 7 and their usage in a simple and intuitive way. AudienceThis tutorial has been prepared for PHP developers from a beginner’s point of view. After completing this tutorial, you will find yourself at a moderate level of expertise in the knowledge of PHP from where you can take yourself to next levels. PrerequisitesWe assume that you already know about the older versions of PHP and now you can start learning the new features of PHP 7. Introspection is a common feature in any programming language which allows object classes to be manipulated by the programmer. You’ll find introspection particularly useful when you don’t know which class or method you need to execute at design time. Introspection in PHP offers the useful ability to examine classes, interfaces, properties, and methods. PHP offers a large number functions that you can use to accomplish the task. In order to help you understand introspection, I’ll provide a brief overview of some of PHP’s classes, methods, and functions using examples in PHP to highlight how they are used. During this article, you’ll see a couple examples of how to use some of the most useful PHP’s introspection function and a section dedicated to an API that offers functionality similar to introspection, the Reflection API. PHP Introspection FunctionsIn the first example, I’ll demonstrate a handful of PHP’s introspection functions. You can use these functions to extract basic information about classes such as their name, the name of their parent class, and so on.
Here is the example PHP code that contains the definition for
The output of the above code should be as follows: The class name is: Introspection I am a super class for the Child class. I'm Child class. I'm Introspection's child. Yes, Child is a subclass of Introspection. You can determine whether or not the given class has been defined using the The The Here’s a second example containing the definition for a
The output of the above code should be as follows: ICurrencyConverter interface exists. The following classes are available: Array ( [0] => stdClass [1] => Exception [2] => ErrorException [3] => Closure [4] => DateTime [5] => DateTimeZone [6] => DateInterval [7] => DatePeriod ... [154] => GBPCurrencyConverter ) GBPCurrencyConverter is declared. The following methods are available: Array ( [0] => __construct [1] => convert ) The following properties are available: Array ( [name] => GBPCurrencyConverter [rates] => Array ( [USD] => 0.622846 [AUD] => 0.643478 ) ) The method convert() exists for GBPCurrencyConverter: bool(true) As you may have guessed, the The The Notice that from all the properties defined in the PHP Reflection APIPHP supports reflection through its Reflection API. As you can see from the PHP manual, the Reflection API is
much more generous then introspection and offers a large number of classes and methods that you can use to accomplish reflection tasks. The Here is an example to illustrate reflection using the same definitions for the
The output of the above code should be as follows: Child is a subclass of Introspection. GBPCurrencyConverter implements ICurrencyConverter. The following methods are available: Array ( [0] => ReflectionMethod Object ( [name] => __construct [class] => GBPCurrencyConverter ) [1] => ReflectionMethod Object ( [name] => convert [class] => GBPCurrencyConverter ) ) The method convert() exists for GBPCurrencyConverter. The The The Reflection API provides a good implementation of reflection giving you the ability to create more complex applications, such as ApiGen, though further discussion is beyond this goal of this article. SummaryIn this article you’ve seen how to use PHP’s introspection functions and Refection API to obtain information about classes, interfaces, properties, and methods. The purpose of pulling this information is to gain greater insight into your code at run time and to create complex applications. Image via Fotolia |