Fatal error: Call to undefined function M()
Fatal error: Call to undefined function M() in F:\wamp\www\mvc\libs\Controller\testController.class.php on line 6 這該怎么解決呢,請大神指點
Fatal error: Call to undefined function M() in F:\wamp\www\mvc\libs\Controller\testController.class.php on line 6 這該怎么解決呢,請大神指點
2018-03-20
舉報
2018-06-13
33234
2018-03-22
變成這個問題了
2018-03-22
<?php
//備注:建立一個控制器調用函數C
? ?function C($name,$method){
? ? ? ?require_once('/libs/Controller/'.$name.'Controller.class.php');
? ? ? ? //$testController = new testController();
? ? ? ? //$testController->show();
? ? ? ? //將字符串轉化為可執(zhí)行的php語句
? ? ? ? eval('$obj = new '.$name.'Controller();$obj->'.$method.'();');
? ? ? ? C('test','show');
? ?}
//傳遞的參數只有name 因為模型通常帶有自己的參數,所以不封裝起來??刂破髟瓌t不能有自己的參數。
? ? ? ? function M($name){
? ? ? ? ? ? require_once('/libs/Model/'.$name.'Model.class.php');
? ? ? ? ? ? // $testModel = new testModel();
? ? ? ? ? ? eval('$obj= new '.$name.'Model();');
? ? ? ?
? ? ? ? ? ? return $obj;
? ? ? ?
? ? ? ? }
? ? ? ? function V($name){
? ? ? ? ? ? require_once('/libs/View/'.$name.'View.class.php');
? ? ? ? ? ? // ?$testView = new testView();
? ? ? ? ? ? eval('$obj=new '.$name.'View();');
? ? ? ? ? ? return $obj;
? ? ? ? }
? ?
? ?//對輸入參數進行篩選,
? ?function daddslashes($str){
? ? ? ?return (!get_magic_quotes_gpc())?addslashes($str):$str;
? ?}
?>
2018-03-21
function.php
<?php
//備注:建立一個控制器調用函數C
? ? function C($name,$method){
? ? ? ? require_once('/libs/Controller/'.$name.'Controller.class.php');
? ? ? ? ?//$testController = new testController();
? ? ? ? ?//$testController->show();
? ? ? ? ?//將字符串轉化為可執(zhí)行的php語句
? ? ? ? ?eval('$obj = new '.$name.'Controller();$obj->'.$method.'();');
//傳遞的參數只有name 因為模型通常帶有自己的參數,所以不封裝起來。控制器原則不能有自己的參數。
? ? ? ? ? ? }
function M($name){
? ? ? ? ? ? ?require_once('/libs/Model/'.$name.'Model.class.php');
? ? ? ? ? ? ?// $testModel = new testModel();
? ? ? ? ? ? ?eval('$obj= new '.$name.'Model();');
? ? ? ? ? ? ?return $obj;?
? ? ? ? ?}
? ? ? ? ?function V($name){
? ? ? ? ? ? ?require_once('/libs/View/'.$name.'View.class.php');
? ? ? ? ? ? ?// ?$testView = new testView();
? ? ? ? ? ? ?eval('$obj=new '.$name.'View();');
? ? ? ? ? ? ?return $obj;
? ? ? ? ?}
? ? //對輸入參數進行篩選,
? ? function daddslashes($str){
? ? ? ? return (!get_magic_quotes_gpc())?addslashes($str):$str;
? ? }
?>
2018-03-21
undefined function M() 出現這個問題是因為你的大括號閉合問題,你C()函數的括號內包含了M()和C()函數,你后面還會出現錯誤,M()和V()函數實例化時候new后面要加空格再跟類名,你這兩處都沒加,還有一處是V()函數最后是要返回值用return?$obj; ? 你試下,我測試
2018-03-20
<?php
class testView{
? ? function display($data){//視圖的作用是將獲得的數據進行組織、美化等,并最終向用戶終端輸出
? ? ? ? echo $data;
? ? }
}
?>
index.php
<?php
? ?//url形式 index.php?controller=控制器名$method=方法名
? ?require_once('function.php');
? ?//內置允許訪問的控制器名和方法名
? ?$controllerAllow= array('test','index');
? ?$methodAllow=array('test','index','show');
? ?//過濾非法參數
? ?$controller = in_array($_GET['controller'],$controllerAllow)?daddslashes($_GET['controller']):'index';
? ?$method = ?in_array($_GET['method'],$methodAllow)?daddslashes($_GET['method']):'index';
? ?C($controller,$method);
?>
test.php
<?php
? ?require_once('testController.class.php');
? ?require_once('testModel.class.php');
? ?require_once('testView.class.php');
? ?$testController = new testController();//把類實例化
? ?$testController->show();//使用show方法
? ?
?>
2018-03-20
提示錯誤是未定義M()函數,你再仔細檢查下?