Ich glaube nicht, dass es etwas falsch mit den nativen Funktionen zu verlassen, aber wenn Sie nur versuchen, wie etwas, um herauszufinden, wie strpos
konnte Arbeit hinter die Szenen, hier ist ein sehr einfaches Beispiel, dass nur Sprachkonstrukte verwendet:
function my_strpos ($haystack, $needle, $offset = 0) {
// for loop with indexes for both strings, up to the length of $haystack
for ($h_index=$offset, $n_index=0; isset($haystack[$h_index]); $h_index++, $n_index++) {
if ($haystack[$h_index] == $needle[$n_index]) { // *CHARACTERS MATCH*
if (!isset($start_pos)) $start_pos = $h_index; // set start_pos if not set
if (!isset($needle[$n_index + 1])) return $start_pos; // all characters match
} else { // *CHARACTERS DON'T MATCH*
$n_index = -1; // reset $needle index
unset($start_pos); // unset match start pos.
}
}
// all charactes of $haystack iterated without matching $needle
return false;
}
Dies ist offensichtlich eine naive Implementierung, die für vali nicht überprüfen d Eingabe oder Handhabung von Fehlern, aber hoffentlich wird es eine mögliche Methode zeigen, eine Zeichenfolge innerhalb einer anderen zu finden.
Wenn Sie wirklich wissen wollen, wie strpos
Arbeit hinter den Kulissen tut, here is a great (although a bit dated) article darüber, wie die PHP-Quelle zu verstehen, die strpos
als Beispiel zu verwenden, geschieht.
Native Funktionen sind für uns wichtig. – FirstOne
Aber lass es uns versuchen. Was hast du bis jetzt gemacht? Du hast gesagt, dass du dich nicht auf native Funktionen verlassen willst (aber du verlässt dich jetzt auf "Foren"). Sie sollten also in der Lage sein, einen eigenen Code zu entwickeln. Praxislogik;) – FirstOne
Es ist nicht, wenn Sie mich nur in die Dokumentation verweisen könnten, wäre ich mehr als glücklich, es selbst zu erforschen, Bruder? – Steven