在localhost中,使用最新的xampp(PHP 5.5.4),我在类中遇到致命错误。在使用该类的多个生产服务器中的任何一个上都不会发生该错误。
class MyClass {
private $ids = array();
public function __construct() {
$this->ids = $this->get_ids();
}
private function get_ids() {
return array(0,1,2);
}
}
$a = new MyClass();
它抛出了这个错误:
Fatal error: Call to undefined method MyClass::get_ids()
这只发生在localhost / xampp中。 也许我错过了生产服务器上始终存在的php.ini设置?
答案 0 :(得分:1)
问题是我从类中的另一个函数输出了一些javascript。一旦发生这种情况,该类的其余部分就会在第一次调用私有方法时引发致命错误。在那个函数中,我走出php输出js。
致命:
public function show_js() {
?>
<script type="text/javascript" >
jQuery(document).ready(function($) {
//etc
});
</script>
<?php
}
如果我将javascript作为字符串回显,则没有致命错误。
public function show_js() {
echo '
<script type="text/javascript" >
jQuery(document).ready(function($) {
//etc
});
</script>';
}
**这只发生在xampp **中 - 至少对我而言。为什么?不知道。