CoreMVC  ·下载 ·文档 ·模块 | ·Hello World ·框架结构

CoreMVC写“Hello World”的九种方法

第一种:最简单的 Hello World

hello_world.php 访问 下载 Hello World!

第二种:次简单的 Hello World

hello_world.php 访问 下载 <?php
echo 'Hello World!';
?>

第三种:面向对象的 Hello World

hello_world.php 访问 下载 <?php
class hello_world {
    public static function 
main () {
        echo 
'Hello World!';
    }
}
hello_world::main();
?>

第四种:作为模块能被其他程序引用的 Hello World 下载

hello_world.php 访问 <?php
class hello_world {
    public static function 
main () {
        echo 
'Hello World!';
    }
    public static function 
hello () {
        echo 
'Hello CoreMVC!';
    }
}
debug_backtrace() or hello_world::main();
?>

index.php 访问 <?php
require_once 'hello_world.php';
hello_world::hello();
?>

访问 http://www.coremvc.cn/hello_world/5/hello_world.php 会自动执行 hello_world::main()。
引用 require_once 'hello_world.php'; 不会自动执行 hello_world::main()。

第五种:使用CoreMVC模块方式的 Hello World 下载

hello_world.php 访问 访问2 <?php
/**
 * 导入(import)
 */
class_exists('core') or require_once 'core.php';

/**
 * 定义(define)
 */
class hello_world extends core {

    public static function 
index () {
        echo 
'Hello World!';
    }

    public static function 
hello () {
        echo 
'Hello CoreMVC!';
    }

}

/**
 * 执行(execute)
 */
hello_world::stub() and hello_world::main();
?>

.htaccess SetEnv core_config 1
SetEnv core_config_framework_enable 1

core.php 核心模块,内容略

模块三段式(IDE):导入定义执行

第六种:使用CoreMVC单入口方式的 Hello World 下载

index.php 访问 访问2 <?php
/**
 * 导入(import)
 */
require_once 'core.php';

/**
 * 执行(execute)
 */
core::init(array(
    
'autoload_enable' => true,
    
'autoload_path' => 'modules',
    
'framework_enable' => true,
    
'framework_module' => '[go]|hello_world!(self)',
    
'framework_action' => '[do]|index',
));
core::main();
?>

modules/hello_world.php <?php
/**
 * 导入(import)
 */
class_exists('core') or require_once 'core.php';

/**
 * 定义(define)
 */
class hello_world extends core {

    public static function 
index () {
        echo 
'Hello World!';
    }

    public static function 
hello () {
        echo 
'Hello CoreMVC!';
    }

}

/**
 * 执行(execute)
 */
hello_world::stub() and hello_world::main();
?>

core.php 核心模块,内容略

第七种:使用CoreMVC配置和模板的 Hello World 下载

index.php 访问 访问2 <?php
/**
 * 导入(import)
 */
require_once 'core.php';

/**
 * 执行(execute)
 */
core::init ('config.php');
core::main ();
?>

config.php <?php
return array(
    
'autoload_enable' => true,
    
'autoload_path' => 'modules',
    
'framework_enable' => true,
    
'framework_module' => '[go]|hello_world!(self)',
    
'framework_action' => '[do]|index',
    
'template_path' => 'templates',
);
?>

modules/hello_world.php <?php
/**
 * 定义(define)
 */
class hello_world extends core {

    public static function 
index () {
        
$name 'World';
        
self::view('hello_world.tpl',compact('name'));
    }

    public static function 
hello () {
        
$name 'CoreMVC';
        
self::view('hello_world.tpl',compact('name'));
    }

}
?>

templates/hello_world.tpl Hello <?php echo $name?>!

core.php 核心模块,内容略
文件三类型(MCT):模块配置模板

第八种:使用CoreMVC数据模型的 Hello World 下载

index.php 访问 访问2 <?php
/**
 * 导入(import)
 */
require_once 'core.php';

/**
 * 执行(execute)
 */
core::init('config.php');
core::main();
?>

config.php <?php
return array(
    
'autoload_enable' => true,
    
'autoload_path' => 'modules',
    
'framework_enable' => true,
    
'framework_module' => '[go]|hello_world!(self)',
    
'framework_action' => '[do]|index',
    
'template_path' => 'templates',
    
'connect_username' => '******',
    
'connect_password' => '******',
    
'connect_dbname' => '******',
);
?>


modules/hello_world.php <?php
/**
 * 定义(define)
 */
class hello_world extends core {

    public static function 
index () {
        
$detail = new self;
        
$detail->id 1;
        
$detail->select();
        
self::view(__CLASS__.'.tpl',compact('detail'));
    }

    public static function 
hello () {
        
$detail self::selects(null,__CLASS__,array('name LIKE ?'=>'%MVC'),null,array('class'=>null));
        
self::view(__CLASS__.'.tpl',compact('detail'));
    }

}
?>

templates/hello_world.tpl Hello <?php echo $detail->name?>!

core.php 核心模块,内容略

框架三步曲(MVC):模型视图控制

第九种:使用CoreMVC继承核心模块的 Hello World 下载

index.php 访问 访问2 <?php
/**
 * 导入(import)
 */
require_once 'CoreMVC.php';

/**
 * 执行(execute)
 */
CoreMVC::init('config.php');
CoreMVC::main();
?>

config.php <?php
return array(
    
'autoload_enable' => true,
    
'autoload_path' => 'modules',
    
'framework_enable' => true,
    
'framework_module' => '[go]|hello_world!(self)',
    
'framework_action' => '[do]|index',
    
'template_path' => 'templates',
    
'connect_username' => '******',
    
'connect_password' => '******',
    
'connect_dbname' => '******',
);
?>


modules/hello_world.php <?php
/**
 * 定义(define)
 */
class hello_world extends CoreMVC {

    public static function 
index () {
        
$detail = new self;
        
$detail->id 1;
        
$detail->select();
        
self::view(__CLASS__.'.tpl',compact('detail'));
    }

    public static function 
hello () {
        
$detail self::selects(null,__CLASS__,array('name LIKE ?'=>'%MVC'),null,array('class'=>null));
        
self::view(__CLASS__.'.tpl',compact('detail'));
    }

}
?>

templates/hello_world.tpl Hello <?php echo $detail->name?>!

core.php 核心模块,内容略

CoreMVC.php <?php
/**
 * 执行(execute)
 */
if(!class_exists('CoreMVC')) {
    require_once 
'core.php';
    class 
CoreMVC extends core {} //PHP 5.2使用
    //class_alias('core','CoreMVC'); //PHP 5.3使用
}
?>



CoreMVC是PHP的一款小巧精致的MVC框架,遵循New BSD协议发布。