如果字符串包含php中的子字符串,stripos将返回false事件

如果字符串包含php中的子字符串,stripos将返回false事件,php,Php,我正在尝试以下代码: if(stripos($video["snippet"]["title"],$trakii)===FALSE){ echo "here"; die; } 其中,$video[“snippet”][“title”]的值是Ed Sheeran-橡皮擦,$trakii是橡皮擦 为什么返回错误 其输出为: here 如我所料: <?

我正在尝试以下代码:

   if(stripos($video["snippet"]["title"],$trakii)===FALSE){
                                    echo "here"; die;
                                }
其中,
$video[“snippet”][“title”]的值是Ed Sheeran-橡皮擦
$trakii是橡皮擦

为什么返回错误

其输出为:

here

如我所料:

<?php
$video = 'Ed Sheeran - Eraser';
$trakii = 'Eraser';
var_dump(stripos($video,$trakii));

您可能会遇到unicode字符的一些问题,这是一个常见的陷阱

你确定吗?我认为你的变量有不同的值。使用preg_match希望这有帮助。var_转储这些值而不是简单地回显它们是的问题是youtube返回的值带有无效字符…谢谢!!很高兴听到你解决了你的问题。虽然我想知道“无效字符”应该是什么。。。
int(13)