代码之家  ›  专栏  ›  技术社区  ›  Nisbo

php-查找包含分号和strpos()的字符串失败

  •  0
  • Nisbo  · 技术社区  · 5 年前

    我有一根绳子

    DTSTART;VALUE=DATE:20190208
    

    我想使用php函数strpos()来查找

    DTSTART;VALUE=DATE:
    

    这只在我删除分号时有效

    我试过

    if(strpos($subValue, "DTSTART;VALUE=DATE:")){
    

    以及(1,2,3次)转义分号

    strpos($subValue, "DTSTART\;VALUE=DATE:")
    strpos($subValue, "DTSTART\\;VALUE=DATE:")
    strpos($subValue, "DTSTART\\\;VALUE=DATE:")
    

    我尝试了stripos()和单引号而不是双引号,但没有成功。

    有什么想法吗?

    2 回复  |  直到 5 年前
        1
  •  1
  •   Kyaw Kyaw Soe    5 年前

    strpos 将返回0,因为指针位于位置0,而0是 false 值,即为什么必须使用值和数据类型比较(==)

    if (strpos($subValue, 'DTSTART;VALUE=DATE:') !== false) {
    
        2
  •  1
  •   Sougata Bose    5 年前

    代码工作正常。

    strpos 将返回 0 是这种情况。将被视为 false .

    尝试-

    if(strpos($subValue, "DTSTART;VALUE=DATE:") !== false) {