You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1.1 KiB

Base classes and interfaces

Object

Object is the base class for many other Yii2 classes.

property feature

Why

To be able to make property public initially and then seamlessly make it private or protected by adding getter and setter method. That will not change API. Results in less repetitive code. Performance drop isn't significant.

callbacks and expressions

Object::newInstance method

This method is a powerful way to instantiate a class. Differences from new:

  • Calls class constructor (same the new operator);
  • Initializes the object properties using the name-value pairs given as the last parameter to this method;
  • Calls Initable::init if the class implements Initable.

Why

To support class dependencies and their lazy loading.

Initable interface

Developer will implement initable interface if running init() needed and will skip it if not.

Why

Indicates where init() will be called and where not. More explicit than it was in Yii 1.

Component