比较2个PHP字符串

时间:2019-03-15 13:29:55

标签: php wordpress for-loop strpos

我很麻烦,因为我不知道如何找到答案。 我正在创建一个wordpress网站,并且有一个搜索引擎

我已经在管理面板中创建了一个选项,并在选项表中编写了一些要编写的代码,但现在的问题是

首先,我使用

从数据库中获取选项。
$mysynonymvalue = get_option( 'synonym-custom' );

我精确地说,它会向我返回这样的东西(芒果,苹果,香蕉)(当然这是一个例子)

我的网址是这样的:

http://supserwebsite/wordpress/?sfid=2675&_sf_s=toto

或者这个

http://superwebsite/wordpress/?sfid=2675&_sf_s=virtualisation云开发者

所以我创建了一个变量来捕获查询

$motsclefs3= $_GET['_sf_s'];

现在我想将字符串$ mysynonymvalueconvert与$ motsclefs3进行比较,以查找是否匹配,所以我写了

                            if (strpos ($mysynonymvalue, $motsclefs3) ){
                            echo '<script >
                                $(document).ready(function(){
                                    $(".vc-tabs-li:nth-child(2)").get(0).click();
                                });
                            </script>';
                            }                           
                            else{
                                echo '
                        <script >
                                $(document).ready(function(){
                                    $(".vc-tabs-li").get(0).click();
                                });
                            </script>';

                            };
                        };                  

该解决方案似乎正常工作,但我无法获得第一个结果,它确实与所有结果都相吻合,但不是我的第一个结果。

它不能正常工作,因为只有一个字母会返回一个匹配项(例如'a')

任何解决方案? 谢谢

2 个答案:

答案 0 :(得分:0)

*无法访问提供的网址。

解决方案: 从db创建一个option字典,然后搜索您要查找的元素。

答案 1 :(得分:0)

到目前为止,我向上移动了一点!所以我想到了这个

我还有

$mysynonymvalue = get_option( 'synonym-custom' );
$mysynonymvalueconvert = preg_split('/[,]+/',$mysynonymvalue);

从数据库中获取单词并将其转换为数组。 (这样做的目的是获取由用户在wordpress管理面板上其他位置编写的元素)

我还有

 $motsclefs3= $_GET['_sf_s'];

获取我的实际查询(这将有助于我进行比较)。我精确地说,它返回了我一个字符串。更具体地说,像这样的URL(http://mywebsite/wordpress/?sfid=2675&_sf_s=examen)使我(以字符串形式)返回“ examen”。

现在我的观点仍然是比较

  $motsclefs3;

位于

 $mysynonymvalueconvert

所以我创建了这样的“ for”循环

for ($i = 0;  $i <= count($mysynonymvalueconvert); $i++){                                                    
                                if(in_array($motsclefs3, $mysynonymvalueconvert)){                                 
                                    echo'yes';
                                    break;
                               }
                               else{
                                    echo 'no';
                                    break;
                               };
                            };

但是我仍然被阻止,仅当它与的第一个元素匹配时才返回“是”

 $mysynonymvalueconvert

有什么想法可以帮助我吗?

谢谢!