利用composer搭建PHP框架(一.路由解析)

利用composer搭建PHP框架。

1.安装composer

安装方法:参考官网 http://docs.phpcomposer.com/00-intro.html#Installation-Windows

安装完毕命令行输出 composer -V 显示版本信息则表示安装成功。

安装方法或者参考:http://blog.csdn.net/mxdzchallpp/article/details/50592577

2.初始化composer项目

创建自己的项目目录,我的是D:\WAMP\wamp\www\framework

在D:\WAMP\wamp\www\framework下创建composer.json,输入文件内容:

在D:\WAMP\wamp\www\framework下创建composer.json,输入文件内容:
{
	"require":{

	}
}

// 命令行进入D:\WAMP\wamp\www\framework
cd D:\WAMP\wamp\www\framework
// 初始化composer项目
composer install
// 执行完毕生成 vendor文件夹 初始化成功
3.开始构造框架代码
新建index.php,内容:
<?php
// 定义根目录路径
define('ROOT_PATH', __DIR__);
// 定义框架目录路径
define('FRAME_PATH', __DIR__ . '/frame/');

// 调用框架入口
require FRAME_PATH . 'start.php';
新建frame文件夹,在frame文件夹下新建start.php,内容:

<?php
// 引入框架自动加载类
require FRAME_PATH . 'FrameAutoLoad.php';
// 注册自动加载方法
spl_autoload_register(array('FrameAutoLoad', 'autoload'));

// 启动框架方法
App::run();
在frame文件夹下新建FrameAutoLoad.php,内容:

<?php
class FrameAutoLoad {
	/* 自动加载类 */
	public static function autoload($class) {
		$path = FRAME_PATH . $class . '.php';
		if(file_exists($path)) {
			require $path;
			return ;
		}
	}
}
框架代码入口首先就是路由解析,这里我们用到slim,中文文档:https://wizardforcel.gitbooks.io/slim3-doc/content/index.html

使用composer安装,编辑composer.json,修改为:

{
	"require":{
		"slim/slim": "3.9.0"
	}
}
或者不指定版本:

{
	"require":{
		"slim/slim": "*"
	}
}
在命令行输入 composer update 获取或者下载依赖包:(注意 需要在D:\WAMP\wamp\www\framework目录下,即对应的composer.json的位置)

composer update
执行完毕,在D:\WAMP\wamp\www\framework\vendor下看到已经安装的slim文件夹

在frame文件夹下新建App.php,内容:

<?php  
use \Psr\Http\Message\ServerRequestInterface as Request;  
use \Psr\Http\Message\ResponseInterface as Response;  
  
// 载入composer自动加载  
require ROOT_PATH . '/vendor/autoload.php';  
  
class App {  
  
    public static function run() {  
        // 启用 slim路由  
        $configuration = [  
            'settings' => [  
                'displayErrorDetails' => true, // 开启错误信息  
            ],  
        ];  
        $c = new \Slim\Container($configuration);  
        $app = new \Slim\App($c);  
        $app->get('/', function (Request $request, Response $response, array $args) {  
            echo '11111';
        });  
        $app->run(); // 启动路由配置
    }  
  
}  

浏览器输入 http://127.0.0.1/framework/index.php/ 显示11111则表示路由配置成功








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值