


Warum schlägt der Vergleich von strpos() mit „=== true' bei PHP-String-Suchen fehl?
Unbeabsichtigte Wahrheit: Die Nichtübereinstimmung in strpos()-Vergleichen verstehen
Trotz ihrer häufigen Verwendung für String-Suchen hat die PHP-Funktion strpos() ein unkonventionelles Verhalten beim Vergleich des Ergebnisses mit „true“. Um diese Anomalie zu verstehen, untersuchen wir einen Codeausschnitt:
$link = 'https://google.com'; $unacceptables = ['https:','.doc','.pdf', '.jpg', '.jpeg', '.gif', '.bmp', '.png']; foreach ($unacceptables as $unacceptable) { if (strpos($link, $unacceptable) === true) { echo 'Unacceptable Found<br>'; } else { echo 'Acceptable!<br>'; } }
Überraschenderweise gibt dieser Code „Akzeptabel!“ aus. für jedes Element im $unacceptables-Array, auch wenn „https:“ in der $link-Variablen vorhanden ist.
Um dieses Rätsel zu lösen, müssen wir uns mit der Semantik von strpos() befassen. Wie in der Dokumentation angegeben, gibt strpos() die „numerische Position des ersten Vorkommens“ der Zeichenfolge $inacceptable innerhalb von $link zurück. In diesem Fall findet strpos() „https:“ an Position 0 und gibt 0 zurück, was in PHP ein wahrer Wert ist.
Daher ist die Bedingung in der if-Anweisung (strpos($link, $unacceptable) === true) wird jedes Mal als true ausgewertet, da strpos() immer eine numerische Position zurückgibt, die immer in einen booleschen Wert true umgewandelt wird.
Zur Korrektur Dazu sollten wir einen nicht strengen Vergleichsoperator (!==) verwenden:
if (strpos($link, $unacceptable) !== false) {
Indem wir den Vergleich in „ungleich falsch“ ändern, stellen wir sicher, dass die if-Anweisung nur bei strpos als wahr ausgewertet wird () findet eine Übereinstimmung und gibt einen Wert ungleich Null zurück (d. h. jede numerische Position außer 0).
Das obige ist der detaillierte Inhalt vonWarum schlägt der Vergleich von strpos() mit „=== true' bei PHP-String-Suchen fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

TooptimizephpCodeForreducedMemoryUseAndExecutionTime, folgt der THESESTEPS: 1) UseferencesInsteadofCopyingLargedatastructUrErestoreducemoryConbumption.2) Hebelverbotsversorgungsverbund

PhpisusedForSensionsemailsDuetoitSintegrationWithServerMailServicesandexternalsMtpproviders, automatisieren SieNotifikationen undmarketingCampaigns.1) setupyourphpenvironmentwithawebebascriccriptionWithPhpithPhPhPhPhPhPHPHPHPSMAILFUCTORISTION.2) useabasiscriccription

Der beste Weg, um E -Mails zu senden, besteht darin, die Phpmailer -Bibliothek zu verwenden. 1) Die Verwendung der Funktion mail () ist einfach, aber unzuverlässig, was dazu führen kann, dass E -Mails Spam eingeben oder nicht geliefert werden können. 2) Phpmailer bietet eine bessere Kontrolle und Zuverlässigkeit und unterstützt HTML -Mail-, Anhänge- und SMTP -Authentifizierung. 3) Stellen Sie sicher, dass die SMTP -Einstellungen korrekt konfiguriert sind und die Verschlüsselung (z. B. Starttls oder SSL/TLS) zur Verbesserung der Sicherheit verwendet wird. 4) Für große Mengen von E -Mails sollten Sie ein E -Mail -Warteschlangensystem verwenden, um die Leistung zu optimieren.

CustomHeaDersandadvancedFeaturesinphpemailenHanceFunctionality und Relance.1) CustomHeadersAddMetAforTrackingandCategorization.2) htmlemailSallowFormattingAndInteractivity.3) AttemmentmentsCanbesentusings -artig -Phpmailer.4) SMTPAUTHENTICTIVEMPR

Das Senden von E -Mails mit PHP und SMTP kann über die Phpmailer -Bibliothek erreicht werden. 1) Installieren und konfigurieren Sie Phpmailer, 2) Setzen Sie SMTP -Serverdetails, 3) Definieren Sie den E -Mail -Inhalt, 4) E -Mails senden und Fehler behandeln. Verwenden Sie diese Methode, um die Zuverlässigkeit und Sicherheit von E -Mails sicherzustellen.

ThebestApproachForSendingemailsinphpisusinusThephpmailerlibraryDuetoitSRective, merkeurichness, Anneaseofuse.phpmailersupportsSmtp, bietet DETAILEDErRORHANDLY, erlaubt, dass

Der Grund für die Verwendung der Abhängigkeitsinjektion (DI) ist, dass sie lose Kopplung, Testbarkeit und Wartbarkeit des Codes fördert. 1) Verwenden Sie den Konstruktor, um Abhängigkeiten zu injizieren.

PhpperformancetuningiscrucialBecauseitenhancesspeedandeffizienz, die sichvitalforewebapplications.1) CachingwithapcureducesDatabaseloadandimprovesresponSetimes.2 optimierenDatabasequeriesbyselekting -Antriebsanbietung und -Insusingsusing -INDUBUTUBUTUBEXINGEPEEDEPEEDEPEEDEPEEDEPEEDEPEEDEPEEDEPEDEPEED.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Dreamweaver CS6
Visuelle Webentwicklungstools

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.
