How can we solve the Fatalerror: Accessleveltoxxxmustbeprotected error in php? For this problem, let's take a look at its solution. in php, how can we solve the Fatal error: Access level to xxx must be protected error? For this problem, let's take a look at its solution.
Script ec (2); script
Today, the program suddenly reports such an error.
Fatal error: Access level to xxx must be protected (as in class xxx) or weaker in xxx. php on line
The reason is that the subclass defines the same method name as the parent class.
Subclass:
Private function return_json ($ message, $ result = 'true '){
$ Data = array ();
$ Data ['result'] = $ result;
$ Data ['message'] = $ message;
Self: echo_json ($ data );
}
Private function echo_json ($ data ){
If (strtoupper (CHARSET) = 'gbk '){
$ Data = Language: getUTF8 ($ data); // when the website GBK uses encoding, it is converted to a UTF-8 to prevent problems with json output Chinese Characters
}
Echo json_encode ($ data );
}
Parent class:
/**
* Return the json status.
*/
Protected function return_json ($ message, $ result = 'true '){
$ Data = array ();
$ Data ['result'] = $ result;
$ Data ['message'] = $ message;
Self: echo_json ($ data );
}
Protected function echo_json ($ data ){
If (strtoupper (CHARSET) = 'gbk '){
$ Data = Language: getUTF8 ($ data); // when the website GBK uses encoding, it is converted to a UTF-8 to prevent problems with json output Chinese Characters
}
Echo json_encode ($ data); die;
}
Solution
Change private in the subclass to protected, or avoid duplicate methods. In this example, we have already defined the same method, and deleted the two methods by subclass.