Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在可选正斜杠后更正参数的正则表达式_Php_Regex_Phalcon_Phalcon Routing - Fatal编程技术网

Php 在可选正斜杠后更正参数的正则表达式

Php 在可选正斜杠后更正参数的正则表达式,php,regex,phalcon,phalcon-routing,Php,Regex,Phalcon,Phalcon Routing,在PHP、Phalcon框架中,正确的方法是如何有选择地转义一个在末尾有可选参数的正斜杠 我想实现: 我的正则表达式: 正在工作,但没有参数: transactions[/]{0,1} 不工作,在服务器日志上,它正在添加事务/2,即使url没有事务/2 transactions[/]{0,1}{param} 正在工作,但明确指示在末尾有一个参数。我怎样才能有一个可选的/正斜杠 谢谢你的建议 谢谢假设您有一个带有indexAction的TransactionController,请尝试定义两个

在PHP、Phalcon框架中,正确的方法是如何有选择地转义一个在末尾有可选参数的正斜杠

我想实现:

我的正则表达式:

正在工作,但没有参数:

transactions[/]{0,1}
不工作,在服务器日志上,它正在添加事务/2,即使url没有事务/2

transactions[/]{0,1}{param}
正在工作,但明确指示在末尾有一个参数。我怎样才能有一个可选的/正斜杠

谢谢你的建议


谢谢

假设您有一个带有indexAction的TransactionController,请尝试定义两个路由,如所述:

<?php
$router->add(
    "/transactions/{param}",
    array(
        "controller" => "transactions",
        "action"     => "index",
    )
);

$router->add(
    "/transactions",
    array(
        "controller" => "transactions",
        "action"     => "index",
    )
);

在Phalcon中,您是否指定了分隔符?论坛上的作者Phalcon在类似的注释中建议只使用两条路径,一条带有参数,另一条没有。
transactions/{param}
<?php
$router->add(
    "/transactions/{param}",
    array(
        "controller" => "transactions",
        "action"     => "index",
    )
);

$router->add(
    "/transactions",
    array(
        "controller" => "transactions",
        "action"     => "index",
    )
);