如何使strpos不区分大小写
如何更改 strpos 以使其不区分大小写。原因是,如果product->name
是MadBike并且搜索词是bike,它不会回显链接。 我主要关心的是代码的速度。
<?php
$xml = simplexml_load_file('test.xml');
$searchterm = "bike";
foreach ($xml->product as $product) {
if (strpos($product->name, $searchterm) !== false ) {
echo $product->link;
} }
?>
How can I change the strpos to make it non case sensitive. The reason is if the product->name
is MadBike and the search term is bike it will not echo me the link.
My main concern is the speed of the code.
<?php
$xml = simplexml_load_file('test.xml');
$searchterm = "bike";
foreach ($xml->product as $product) {
if (strpos($product->name, $searchterm) !== false ) {
echo $product->link;
} }
?>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您正在寻找
stripos()
如果您不可用,那么只需首先对两个字符串调用
strtolower()
即可。编辑:
如果您想查找带有变音符号的子字符串,
stripos()
将不起作用。例如:
stripos("Leży Jerzy na wieży i nie wierzy, że na wieży leży dużo JEŻY","jeży");
返回false
,但它应该返回int(68)
。You're looking for
stripos()
If that isn't available to you, then just call
strtolower()
on both strings first.EDIT:
stripos()
won't work if you want to find a substring with diacritical sign.For example:
stripos("Leży Jerzy na wieży i nie wierzy, że na wieży leży dużo JEŻY","jeży");
returnsfalse
, but it should returnint(68)
.http://www.php.net/manual/en/function.stripos.php
stripos() 不区分大小写。
http://www.php.net/manual/en/function.stripos.php
stripos() is not case-sensitive.
stripos() 中的 'i' 表示不区分大小写
'i' in stripos() means case insensitive
写出名字和$searchterm 在 $strpos 之前小写。
make both name & $searchterm lowercase prior to $strpos.