Comments (5)
某个路径回调还是支持的, 自定义路由~
https://github.com/TIGERB/easy-php/blob/master/config/demo/route.php
问题就是我正则还是很水,后期补上~
哈哈~
from easy-php.
上次写了一篇文章:Just for fun——PHP框架之简单的路由器(1)
from easy-php.
学习下~
from easy-php.
我把文章更新了下,添加了代码的讲解,最核心的代码
$routeLookup = [];
$index = 1;
$regexes = array_keys($this->methodToRegexToRoutesMap[$httpMethod]);
foreach ($regexes as $regex) {
$routeLookup[$index] = [
$this->methodToRegexToRoutesMap[$httpMethod][$regex]->handler,
$this->methodToRegexToRoutesMap[$httpMethod][$regex]->variables,
];
$index += count($this->methodToRegexToRoutesMap[$httpMethod][$regex]->variables);
}
$regexCombined = '~^(?:' . implode('|', $regexes) . ')$~';
if(!preg_match($regexCombined, $uri, $matches)) {
return [self::NOT_FOUND];
}
for ($i = 1; '' === $matches[$i]; ++$i);
list($handler, $varNames) = $routeLookup[$i];
$vars = [];
foreach ($varNames as $varName) {
$vars[$varName] = $matches[$i++];
}
return [self::FOUND, $handler, $vars];
from easy-php.
学习~
thx~
from easy-php.
Related Issues (14)
- 不太会用这个啊。。。 HOT 3
- 请问一下 commit-msg 是如何使用的呢? HOT 9
- 命令行模式 HOT 1
- Delete stale branches HOT 1
- 请问下easyphp后面还更新吗? HOT 5
- 访问地址重定向的规则是? HOT 1
- runningMode is a private property HOT 2
- 关于load自动加载 HOT 3
- 关于异常处理的疑问 HOT 3
- loadEnv方法转移的意义是? HOT 3
- Fatal error: Uncaught Error: Cannot access private property HOT 1
- ORM的sql builder是不是学laravel的^_^ HOT 1
- webpack output undefined HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from easy-php.