检查两个字符串是否以相同的字符开头


Check if two strings start with the same character

我正在尝试在面向对象的PHP中执行此操作,但是在使用递归时遇到了问题(如果第一个字符串以"("开头,我想检查以下字符),其他情况有效。这是代码:

public static function different_first($item,$item1) {
    if (substr($item, 0, 1) != substr($item1, 0, 1)) {
        return TRUE;
    } else if (substr($item,0,1)=="(") {
        Object::different_first(substr($item, 1), $item1);
    } else { 
        return FALSE;
    }
}

您缺少退货:

return Object::different_first(substr($item, 1), $item1); 

缺少马克提到的回报。我对您的代码进行了一些改进。这会运行得更快。

public static function different_first($item,$item1) {
    if ($item{0} == $item1{0}){
        return false;
    }elseif ($item{0}=="(") {
        return Object::different_first($item{1}, $item1);
    } else { 
        return true;
    }
}