问题标签 [fastroute]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 如何在视图中获取匹配的路由名称 - Zend Expressive
我知道我可以通过路由名称生成 URL
但是我能得到相反方向的信息吗?从当前 URL/URI,我需要获取路由名称。
真实情况是:我有 layout.phtml 顶部菜单(html)在哪里。菜单中的当前链接需要用 css 类标记。所以,我需要的例子是:
我正在使用快速路线,但我对任何解决方案都很感兴趣。解决方案不必在视图文件中。
php - Slim 框架可选参数路由
我是 php 新手,我正在使用 Slim Framework 开发一个简单的 Rest Api。
根据文档,Slim 使用FastRoute。
我有一条带有可选参数(供应商和数量)的路线,如下所示:
问题是,如果我将供应商留空,数量的值将转到供应商,而数量将不会被填写。我知道通过快速路线我无法做到这一点。但是,我该怎么做呢?
- 我可以使用快速路线吗?
- 我可以用 Slim 做吗?
- 是否有另一个框架可以实现我想要的?
- 我应该只使用查询字符串吗?(我认为这就是答案,但我需要有更多知识的人的帮助)。
谢谢你。
laravel-5 - 从 Lumen 中的 Views 文件夹外部渲染视图
我正在 Lumen 5.3 中编写一个 API,我想在我的文档中包含APIDoc,我将 APIDoc 文件渲染到 app/API/Docs,并且我希望能够在任何时候从这个文件中渲染 index.html /docs 路由被浏览器上的 Get 请求击中。我怎样才能在流明中实现这一点?
php - 使用 Dice - Zend Diactoros 和 Fast Route 的依赖注入器
我在一个小项目中使用 Dice(一个不错的 Dependency Injector)。我还在使用 PSR7 Zend Diactoros 来处理请求和 nikic 快速路由。
我使用文档中的示例让 Dice 为 Twig、DB 和我的所有其他类工作,但我无法弄清楚如何使用它将 Request $request 传递给我的控制器。
如果您至少可以为我指出如何正确使用依赖注入器来处理此类用例,我将不胜感激
控制器代码:
应用程序初始化代码:
在路由器代码中:
其中 $this->app->di 是 Dice 而 $handler 是
1因为我的路由没有参数第一个错误是我传递给几个参数,所以我尝试在路由器中执行此操作,它调用控制器的索引方法并传递 $request
2现在我通过了我的参数,但错误是
我有一种感觉,我使用这一切都错了,也许 Di 需要创建,$midEngine
因为现在我自己创建了一个响应和请求对象。
任何建议都会很好,我正试图围绕一个迷你框架应该如何围绕一个 Di 旋转。
谢谢,亚历克斯
php - 在 Slim3 中将 http|https 与 fasteRoute 匹配
这是我的 slim3 示例FastRoute:
使用这个 FastRoute“正则表达式”([{domaine}[/{notused:.+}]]),我匹配:
并且 $args['domaine'] 返回“sample.com”。
但我也想匹配这个:
像这样添加新路线:
但最好只有一条线。
有任何想法吗 ?
php - 在 MVC PHP 中使用依赖注入
对于加载类,我使用 PSR-4 自动加载。在我的index.php
我使用 FastRoute 组件。在那里index.php
我创建了 $db 连接并将其传递给控制器。
在控制器中,我收到它并将其传递给模型并在那里使用它。我知道这是不好的方法。在index.php
我如何在我的模型中使用它而不通过控制器等并且没有连接的单例实例时创建的数据库连接?如何使用 DI 或 DIC 设置数据库连接index.php
并进入所有模型?
索引.php:
控制器:
模型:
php - 带周期的流明路线
在 Laravel 中,我可以简单地有一条带有句号的路线,如下所示:
但在流明:
这总是返回 404 错误:
/foo.bar
在此服务器上找不到请求的资源。
请告诉我为什么我们不能有包含句点的路线?
任何帮助将不胜感激。
PS:
如果我用破折号( - )或下划线( _ )替换句点,它可以正常工作。
php - 路由的子目录的基本路径
我有以下结构:
http://example.com
指向/home/alvaro/public_html
,因此http://example.com/Code Playground/SlimTest
指向/home/alvaro/public_html/Code Playground/SlimTest
,我放置此.htaccess
文件的目录:
简而言之,http://example.com/Code Playground/SlimTest
在浏览器中加载会执行我的/home/alvaro/public_html/Code Playground/SlimTest/public/index.php
Slim/3.9.0 (slim/slim-skeleton) 入口点。
我的问题是我无法获得正确的路线。我尝试了所有可能的组合:
...但我总是收到Slim班级提供的404 Not Found页面。NotFound
有没有办法根据路由定义获取基本路径,以便我可以预先添加它
get()
?如果不是,那么硬编码路径会是什么样子?
我应该在 Apache 中寻找修复程序,例如Alias吗?
php - 除非使用带有 index.php 的绝对路径,否则 PHP 路由不起作用
使用 nikic/fast-route PHP 包进行 url 路由:
PHP url 路由不起作用,除非我指定路由的整个路径,而不仅仅是路由的名称:
例如,为了创建一个路由/hello-world
,我必须指定整个路径:localhost/myProject/public/index.php/hello-world
.htaccess 文件中有什么需要做的吗?
关于当前项目的细节:
我没有使用框架,而是 Patrick Louys 在 GitHub 上的无框架教程:https ://github.com/PatrickLouys/no-framework-tutorial
我在 Fedora Linux 上使用 XAMPP 作为 Web 服务器
我的代码位于我的 /home 目录中,而 Web 服务器位于 /opt/lampp 中……我已经用符号链接将它们链接起来:(sudo ln -s /home/... /opt/lampp/htdocs
如果重要的话)……我知道本教程依赖于 PHP 内置服务器 ( php -S localhost:8000
)
php - 在 Web 应用程序中,这些路由样式是什么?
将一个 URL 直接映射到文件的路由称为什么?
例子:
http://localhost/directory/file.php
=>/var/www/apache/htdocs/directory/file.php
你怎么称呼https://github.com/nikic/FastRoute上的路由?
例子:
http://localhost/directory/file
=> 请求实际上转到单个index.php
文件,然后加载路由文件或表并加载路由表中定义的适当类。