<?php
$_SERVER['REQUEST_URI'] = '/post/edit/1024?foo=bar';
$uri = explode('/', parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
var_export($uri);
//输出
array (
0 => '',
1 => 'post', //控制器(控制器存在就require)
2 => 'edit', //方法
3 => '1024', //参数(获取参数foo就用传统的$_GET['foo'])
) $class = $uri[1];
require 'controller/'.$class.'.php'; // controller/post.php
$object = new $class();
$action = $uri[2];
$parameter = $uri[3];
echo call_user_func_array(array($object, $action), array($parameter)); //调用对象里的方法并传参 controller/post.php:
class post {
public function edit($id) {
return '$'.__CLASS__.'->'.__FUNCTION__.'('.$id.')'; //输出 $post->edit(1024)
}
}

最新文章

  1. About_php_封装函数
  2. 【读书笔记】iOS-ARC-不要向已经释放的对象发送消息
  3. JavaWeb---总结(十七)JSP中的九个内置对象
  4. javascrit2.0完全参考手册(第二版) 第2章第4节 基本的数据类型
  5. IOS第15天(2,事件处理hitTest练习)
  6. C++ 中的模板类声明头文件和实现文件分离后,如何能实现正常编译?
  7. 3des加解密算法
  8. I/O地址映射
  9. Android学习笔记之JSON数据解析
  10. 12 为何使用Html5+CSS3
  11. Hybrid UI framework shootout: Ionic vs. Famo.us vs. F7 vs. OnsenUI
  12. Installing node-oracledb on Microsoft Windows
  13. Jenkins Android 自动打包配置
  14. 《女神异闻录 5》的 UI 设计
  15. how2j网站前端项目——天猫前端(第一次)学习笔记2
  16. 27 isinstance与issubclass、反射、内置方法
  17. 服务不支持chkconfig的解决
  18. DELPHI WM_CopyData 用法
  19. nodeJS + webStrome
  20. redis的使用及方法

热门文章

  1. 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 H. Skiing
  2. OpenCV处理文件、视频和摄像头
  3. 使用svn未响应卡死的几个原因,commit时checkout时
  4. git上传文件夹报错: ! [rejected] master -&gt; master (fetch first) error: failed to push some refs to &#39;https://github.com/taminachen/rjxm.git&#39; hint: Updates were rejected because the remote contains work
  5. JAVA中如何定义自定义注解
  6. Nagios-Nagios-Nagios系统监控(centos7部署源码)
  7. java面试07——设计模式
  8. windows下查看C语言字符数组(俗称:字符串)在内存中地址信息的操作过程
  9. php目录函数操作,以及使用递归
  10. 集合综合练习&lt;二&gt;