我有以下代码:
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
声明替换中我必须使用什么。
答案 0 :(得分:1)
最简单的解决方案就是替换两个get['filter']
值,如此
<operation>
<search position="replace"><[CDATA[get['filter']]]></search>
<add><[CDATA[get['attribute']]]></add>
</operation>
答案 1 :(得分: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>
希望它可以帮助像我这样的其他人