今天程序突然出现这样的报错
Fatal error: Access level to xxx must be protected (as in class xxx) or weaker in xxx.php on line
原因是子类中定义了与父类一样的方法名
子类:
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);//网站GBK使用编码时,转换为UTF-8,防止json输出汉字问题
}
echo json_encode($data);
}
父类:
/**
* 返回json状态
*/
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);//网站GBK使用编码时,转换为UTF-8,防止json输出汉字问题
}
echo json_encode($data);die;
}
解决办法
把子类中的private 改成 protected,或者避免方法重名。这里例子中很显然是相同的方法进行了重复的定义,子类删除这两个方法即可。
敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载像素火影骨架佐助 (Perseverance Fire Shadow)手机版v1.16
下载要塞英雄 安卓版v33.20.0-39082670-Android
下载梦想城镇vivo最新版本 安卓版v12.0.1
梦想城镇vivo版是这款卡通风模拟经营类手游的渠道服版本,玩
怦然心动的瞬间 安卓版v1.0
怦然心动的瞬间是一款真人向的恋爱互动游戏,在游戏中玩家将扮演
曼尼汉堡店游戏 安卓版v1.0.3
曼尼汉堡店是一款非常好玩的精品恐怖类型冒险游戏,在这款游戏中
现代总统模拟器去广告版 安卓版v1.0.46
现代总统模拟器是一款休闲养成类游戏,可能对于不少的玩家来说都
现代总统模拟器付费完整版 安卓版v1.0.46
现代总统模拟器高级版在商店是需要付费的,相对于普通版本,高级