我正在写一个Drupal模块,但这个问题不是特定于Drupal的。
Drupal有一个名为menu_router
的表,它将人性化的URL与可以提取内容的实际URL相关联。例如:
+--------------------------------------------------------+
| admin/config/media/image-styles/edit/%/add/% |
| admin/config/media/image-styles/edit/%/effects/% |
| admin/structure/types/manage/%/comment/fields/%/delete |
| admin/structure/types/manage/%/comment/fields/%/edit |
+--------------------------------------------------------+
我有一个任意网址,我想确保它实际上映射到网站上的有效网址。但是我不能轻易地进行通配符查询,因为如上所示,通配符字符串已作为列值存在,我的搜索条件将是匹配!
例如,根据Drupal处理URL的方式,'arbitrary/url/string/'
将匹配'arbitary/%/string'
。
有什么方法可以查询是否有任何给定字符串匹配任何通配符的Drupal样式网址?
答案 0 :(得分:0)
我想你可以在menu_router的行中创建一个大的模式(即每行的模式的OR),然后看看你的目标是否匹配。只要你不需要知道它匹配的menu_router中的哪一行,那就是。