這裏是我的的config.php調用未定義的方法在PHP
<?php
define('DB_HOST', 'localhost');
define('DB_NAME', 'xxxx');
define('DB_USER', 'xxxx');
define('DB_PASS', 'xxxx');
?>
,它是db.php中
<?php
include 'config.php';
class DB {
public static $pdo;
public static function connection(){
if (!isset(self::$pdo)) {
try {
self::$pdo = new PDO('mysql:host='.DB_HOST.'; dbname ='.DB_NAME,DB_USER, DB_PASS);
}catch(PDOException $e){
echo $e->getMessage();
}
}
return self::$pdo;
}
public static function prepareOwn($sql){
return self::connection()->prepare($sql);
}
}
?>
第三文件是Student.php
<?php
include 'DB.php';
class Student {
public $table = 'student_info';
public function readAll(){
$sql = "SELECT * FROM $this->table";
$stmt = DB::prepareOwn($sql);
$stmt->execute();
return $stmt->fetchAll();
}
}
?>
但當我嘗試從使用的index.php spl_autoload_register()訪問readAll()然後我可以看到致命錯誤:調用未定義的方法DB :: prepareOwn()
誰能幫我解決問題??
非常感謝。 Sahidul
你有沒有嘗試添加一個斷點,步進扔的代碼?當你啓動realAll時,好奇DB是什麼。 – Swordfish0321
不,我沒有。你可以給我源實現斷點調試問題?? –