Pytanie o strpos w PHP

Próbuję to tylko zrozumieć ...

<code>$mystring = "/abc/def/hij";
$find = "/abc";

echo(strpos($mystring, $find) . "<br>");
if (strpos($mystring, $find) >= 0) {
    echo("found");
} else {
    echo("not found");
}
</code>

to da: 0 znalezione

<code>$mystring = "/abc/def/hij";
$find = "/fffff";

echo(strpos($mystring, $find) . "<br>");
if (strpos($mystring, $find) >= 0) {
    echo("found");
} else {
    echo("not found");
}
</code>

wyjście: znaleziono [puste]

Teraz, jeśli zmienię komparator i użyję „! = False” zamiast „> = 0”

<code>$mystring = "/abc/def/hij";
$find = "/fffff";

echo(strpos($mystring, $find) . "<br>");
if (strpos($mystring, $find) **!= false**) {
    echo("found");
} else {
    echo("not found");
}
</code>

Działa to prawie we wszystkich przypadkach, z wyjątkiem sytuacji, gdy szukam podciągu na początku łańcucha. Na przykład wyświetli „nie znaleziono”:

<code>$mystring = "/abc/def/hij";
$find = "/abc";

echo(strpos($mystring, $find) . "<br>");
if (strpos($mystring, $find) != false) {
    echo("found");
} else {
    echo("not found");
}
</code>

Jak mogę to zrobić? Chcę tylko wiedzieć, czy podłańcuch istnieje w ciągu i powinien dać mi „prawda”, jeśli podciąg jest początkiem lub całym łańcuchem ...

questionAnswers(2)

yourAnswerToTheQuestion