基于通配符的PHP字符串比较

香港电台

需要比较两个字符串以仅在第5个索引处的唯一字符不同(忽略前4个字符)的情况下获得PAIR ...在mysql中,可以通过INBXOLC800Y = INBX_LC800Y(使用'_'通配符)来实现,但是如何在PHP中执行此操作...这是我现在的代码,但是我想可能会有更聪明和/或更短的方法???

$first_sku_full=  "INBXOLC800Y";
$first_sku_short= substr($first_sku_full, 5); // gives LC800Y

$second_sku_full= "INBXPLC800Y";
$second_sku_short= substr($second_sku_full, 5); // gives LC800Y

if ( $first_sku_short == $second_sku_short ) {
    // 6th character onward is matched now included 5th character  
    $first_sku_short= substr($first_sku_full, 4); 
    $second_sku_short= substr($second_sku_full, 4); 
    if ( $first_sku_short != $second_sku_short ) { 
        echo "first and second sku is a pair";     
    }else{
        echo "first and second sku is NOT a pair;
    } 
}
巴尔玛

您可以通过不分配所有这些变量来缩短它,只需测试中的子字符串即可if

if (substr($first_sku_full, 5) == substr($second_sku_full, 5)) {
    if ($first_sku_full[4] != $second_sku_full[4])
        echo "first and second sku are a pair";
    } else {
        echo "first and second sku are NOT a pair";
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章