【问题标题】:URL string compare not working in phpURL字符串比较在php中不起作用
【发布时间】:2018-07-20 17:46:54
【问题描述】:

我有这个网址“https://www.example.com/thymus_vulgaris?tag=Oil&page=2” 我从 $_SERVER['REQUEST_URI'] in php 获得 /thymus_vulgaris?tag=Oil&page=2 我还在数据库中保存了与变量相同的 URL $abc = /thymus_vulgaris?tag=Oil&page=2 您可以看到两个 URL URI 相同我正在编写此代码。 但是比较不起作用,请查看屏幕截图值以更好地理解

foreach ($redirects as $redirectlink) { 
                        if('/thymus_vulgaris?tag=Oil&page=2' == $redirectlink['title']){
                                die;
                            }
                        }

如果我做 print_r($redirects) 我得到了这个数组结果,见下文

Array

(

[0] => Array
    (
        [title] => /thymus_vulgaris?tag=Oil&page=2
        [url] => essential-oils
    )

[1] => Array
    (
        [title] => /products/diffusers
        [url] => diffusers
    )

[2] => Array
    (
        [title] => /essential-oils/Essential-Oil-Kits/sleep_and_breathe
        [url] => essential-oils
    )

[3] => Array
    (
        [title] => /Solum%20Lux%20Telum
        [url] => essential-oils
    )

[4] => Array
    (
        [title] => /organic-boswellia-serrata
        [url] => essential-oils
    )

[5] => Array
    (
        [title] => /faqs
        [url] => FAQ
    )

[6] => Array
    (
        [title] => /clearance/refurbished-replacement-bottles/amp
        [url] => accessories/bottles-and-caps/amp
    )

[7] => Array
    (
        [title] => /refurbished-replacement-bottles/amp
        [url] => accessories/bottles-and-caps/amp
    )

)

如果您看到第一个数组值与请求 $_SERVER['REQUEST_URI'] 值相同。 谁能快点帮帮我?

【问题讨论】:

  • 你怎么知道比较不起作用? die("it worked"); 可能吗?
  • 我尝试了您在此处发布的内容,它对我有用。我想也许是某个角色搞砸了(/?&),但一切都很好。您确定没有任何显示为& 但实际上在任何地方都是& 的HTML 实体吗?在 if 之前添加 var_dump($redirectlink['title']);

标签: php regex


【解决方案1】:

我猜可能是一些不可见的字符,因此== 导致false

例如:DEMO

$ php -r '$f1="foo"; $f2="foo\0"; echo $f1.PHP_EOL; echo $f2.PHP_EOL; var_dump($f1); var_dump($f2); var_dump($f1==$f2);'
foo
foo
string(3) "foo"
string(4) "foo"
bool(false)

如上所示,$f1$f2 不相等,但看起来一样。

输出:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-16
    • 1970-01-01
    • 2011-09-20
    • 2015-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多