0

我有以下代码:

if (isset($this->request->get['filter'])) {
        $filter = $this->request->get['filter'];
} else {
        $filter = '';
}

我想将其替换为:

if (isset($this->request->get['attribute'])) {
        $filter = $this->request->get['attribute'];
} else {
        $filter = '';
}

我在 vQmod 文件夹中尝试了以下内容:

<operation info="After filter request, add attribute request">
            <search position="Replace"><![CDATA[
            if (isset($this->request->get['filter'])) {
            ]]></search>
            <add><![CDATA[
            if (isset($this->request->get['attribute'])) {
                    $filter = $this->request->get['attribute'];
            }
            ]]></add>
</operation>

我检查了 vQmod 日志文件并收到错误消息:SEARCH NOT FOUND
谁能帮我告诉我在if语句替换中必须使用什么。

4

2 回答 2

1

最简单的解决方案就是像这样替换两个get['filter']

<operation>
    <search position="replace"><[CDATA[get['filter']]]></search>
    <add><[CDATA[get['attribute']]]></add>
</operation>
于 2013-08-02T10:41:24.570 回答
0

我试图在offset我的搜索属性中使用,<search position="Replace" offset="2">但它会产生一些其他错误,所以我决定使用单行搜索,如下所示:

            <operation>
                    <search position="replace"><![CDATA[
                    if (isset($this->request->get['filter'])) { 
                    ]]></search>
                    <add><![CDATA[
                    if (isset($this->request->get['attribute'])) {
                    ]]></add>
            </operation>
            <operation>
                    <search position="replace"><![CDATA[
                    $filter = $this->request->get['filter'];
                    ]]></search>
                    <add><![CDATA[
                    $filter = $this->request->get['attribute'];
                    ]]></add>
            </operation>

希望它可以帮助像我这样的其他人

于 2013-08-02T05:58:58.437 回答