检查字符串是否包含任何文本

时间:2017-01-17 10:20:37

标签: php laravel laravel-5.2 laravel-5.3

我有这个字符串:

$mystring = "SIZE,DETAIL";

我正在使用:

@if (strpos($mystring, 'SIZE'))
        {{ $item->size }}
@endif
@if (strpos($mystring, 'DETAIL'))
        {{ $item->detail }}
@endif

但这适用于SIZE,但不适用于DETAIL。

这里有什么问题?

3 个答案:

答案 0 :(得分:3)

由于您使用的是Laravel,因此可以使用str_contains()帮助程序:

@if (str_contains($mystring, 'SIZE'))
  

str_contains函数确定给定字符串是否包含给定值

答案 1 :(得分:2)

此函数可能返回布尔值FALSE,但也可能返回非布尔值,其值为FALSE。

试试这个:

@if (strpos($mystring, 'SIZE') !== false)
    {{ $item->size }}
@endif
@if (strpos($mystring, 'DETAIL') !== false)
    {{ $item->detail }}
@endif

参考:http://php.net/manual/en/function.strpos.php

答案 2 :(得分:-1)

使用strpos时,您需要与FALSE进行比较。您的刀片代码示例如下:

@if (strpos($mystring, 'SIZE') !== FALSE)
        {{ $item->size }}
@endif
@if (strpos($mystring, 'DETAIL') !== FALSE)
        {{ $item->detail }}
@endif

但是,使用Laravel时,您可以使用str_contains($haystack, $needles)代替strpos