Since $error_messages is declared private, accessing it with static will lead to errors in possible sub-classes; consider using self, or increasing the visibility of $error_messages to at least protected.
Let’s assume you have a class which uses late-static binding:
The code above will run fine in your PHP runtime. However, if you now create a
sub-class and call the getSomeVariable() on that sub-class, you will receive
a runtime error:
classYourSubClassextendsYourClass{}YourSubClass::getSomeVariable();// Will cause an access error.
In the case above, it makes sense to update SomeClass to use self instead:
classSomeClass{privatestatic$someVariable;publicstaticfunctiongetSomeVariable(){returnself::$someVariable;// self works fine with private.}}
Loading history...
18
static::NO_ERROR_TEXT => "Error text could not found for ':param', or Error file could not found",
19
static::STATIC_METHOD => "The method :param should be static",
20
static::UNKNOWN_RULE => "Unknown Rule: :param",
21
static::ARRAY_EXPECTED => "Rules are expected to Array. Input Name: :param"
Since $error_messages is declared private, accessing it with static will lead to errors in possible sub-classes; consider using self, or increasing the visibility of $error_messages to at least protected.
Let’s assume you have a class which uses late-static binding:
The code above will run fine in your PHP runtime. However, if you now create a
sub-class and call the getSomeVariable() on that sub-class, you will receive
a runtime error:
classYourSubClassextendsYourClass{}YourSubClass::getSomeVariable();// Will cause an access error.
In the case above, it makes sense to update SomeClass to use self instead:
classSomeClass{privatestatic$someVariable;publicstaticfunctiongetSomeVariable(){returnself::$someVariable;// self works fine with private.}}
Let’s assume you have a class which uses late-static binding:
The code above will run fine in your PHP runtime. However, if you now create a sub-class and call the
getSomeVariable()
on that sub-class, you will receive a runtime error:In the case above, it makes sense to update
SomeClass
to useself
instead: