Sie sind hier: Startseite -> PHP-Grundlagen -> Text abfragen (strspn)

Text durch PHP und strspn abfragen

String vergleichen und abfragen

Eine weitere Möglichkeit, Text in PHP abzufragen, um daraus Schleifen bauen zu können, besteht darin, den PHP-Befehl strspn zum Einsatz zu bringen. Er braucht zwei Parameter, nämlich den Text selbst als Variable und das Zeichen oder die Zeichen, um die Abfrage durchführen zu können.

Somit steht noch eine Option bereit, um herauszufinden, ob eine benötigte Zeichenkette im vorliegenden Text zur Verfügung steht - eine Situation, die man in Skripte immer wieder vorfindet.

Mit dem PHP-Befehl strspn Text vergleichen

<?php
$beispieltext = "Ich mag keine Arbeit mehr.";
echo $beispieltext."
";
echo strspn($beispieltext, "Ich"), "
";
echo strspn($beispieltext, "hcI"), "
";
echo strspn($beispieltext, "mag");
?>

ergibt:

3
3
0

Der PHP-Befehl strspn ist eine interessante Möglichkeit, einen Text abzufragen. In diesem Fall zielt die Abfrage darauf ab, ob eine Übereinstimmung gegeben ist oder nicht und beginnt am Anfang des Textes zu zählen.

Wenn man das Beispiel in ein PHP-Dokument kopiert bzw. den Code als solches abspeichert und im Browser aufruft, erhält man als erste Antwort 3, als zweite ebenfalls und als dritte 0. Die erste Antwort ist die Auskunft, dass die Abfrage "Ich" drei Zeichen lang mit dem gesuchten Textteil übereinstimmt, was ja auch richtig ist.

Etwas überraschender ist die zweite Auskunft. Auch sie erkennt, dass die Zeichen übereinstimmen, obwohl ich nach "hcI" gesucht habe, also in verkehrter Schreibweise, aber das ist dem strspn-Befehl völlig egal.

Für Unwissende wird jetzt die dritte Auskunft auch verwirrend sein. Es gibt einige Befehle in PHP, die bei der Abfrage, ob "mag" enthalten ist, mit ja geantwortet hätten. Nicht so strspn, das am Beginn die Übereinstimmung prüft. Am Beginn des Textes steht Ich und nicht mag und daher ist die Auskunft 0, weil es keine Übereinstimmung gibt. Dass "mag" später folgt, ist dem Befehl egal.

Somit kann man mit dem Befehl Abfragen durchführen, beispielsweise könnte es sein, dass man ein Verzeichnis untersucht und nur jene Dateien ansprechen will, die mit 201006 beginnen. Hier wäre der strspn-Befehl das richtige Werkzeug, um die Dateinamen zu hinterfragen.

Buchtipp: Einstieg in PHP8 und MySQL (Thalia)*
* = Affiliate-Link; bei Kauf unterstützen Sie diese Plattform

Lesen Sie auch

PHP + Text ist ein sehr wichtiges Thema in vielen Skripte, die mit PHP programmiert werden. Denn man hat es oft mit Text zu tun, den externe Personen in Formulare eingeben - inklusive in Redaktionssysteme. Der Text soll aber perfekt aussehen und daher braucht es Werkzeuge, um ihn zu hinterfragen, zu kürzen, zu ersetzen oder überhaupt zu löschen.

Die Basiswerkzeuge können dabei helfen, dass man unnötige Leerzeichen in die Wüste schickt oder dass man den Text in Großbuchstaben umwandelt - vollkommen automatisch, versteht sich. Auch die Aufteilung eines vorgegebenen Textes mittels explode in ein Array ist als Voraussetzung für weitere Bearbeitungen wichtig.

Und dann gibt es noch viele weitere Möglichkeiten, was mit dem Text gemacht werden kann. Man kann mit substr den Text auf die gewünschte Länge kürzen, man kann aber auch eine Abfrage durchführen, ob der Text eine bestimmte Zeichenkette beinhaltet. Mit str_replace kann man überhaupt gleich den Text ersetzen oder löschen und mit htmlentities die Sonderzeichen codieren.

Themenseiten

Diesen Artikel teilen

Infos zum Artikel

PHP-Befehl strspnArtikel-Thema: Text durch PHP und strspn abfragen
Beschreibung: Mit dem PHP-Befehl ✅ strspn kann man einen Text auf ✅ bestimmte Werte abfragen und damit auch vergleichen.

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel