Henry: stripos extrem langsam Problem, besser strpos?

problematische Seite

Hallo,

eigentlich keine Frage mehr, habe schon eine Antwort gefunden. Wollte es aber trotzdem für andere mitteilen.

Gestern wunderte ich mich, warum ein Script (Riesentextdatei auf vorhandene Wörter kontrollieren) scheinbar gar nicht fertig wurde. Das änderte sich erst als ich stripos gegen strpos tauschte, da waren es gerade mal ca. 2 Sekunden. Fürchtete schon alte Scripte darauf hin nochmal untersuchen zu müssen. Aber dann fand ich doch noch im Netz die Erklärung dazu, scheint wohl nur ein Problem unter Windows zu sein. Aber gut, werde dennoch (muss jeder für sich entscheiden) ab sofort strpos bevorzugen, auch wenn ich dann u.U. auch noch strtolower oder sonst was vorbereiten muss.

Gruss
Henry

--
Meine Meinung zu DSGVO & Co:
„Principiis obsta. Sero medicina parata, cum mala per longas convaluere moras.“
  1. problematische Seite

    Hello,

    eigentlich keine Frage mehr, habe schon eine Antwort gefunden. Wollte es aber trotzdem für andere mitteilen.

    Schön, dass Du mal darüber geschrieben hast ;-)

    Gestern wunderte ich mich, warum ein Script (Riesentextdatei auf vorhandene Wörter kontrollieren) scheinbar gar nicht fertig wurde. Das änderte sich erst als ich stripos gegen strpos tauschte, da waren es gerade mal ca. 2 Sekunden. Fürchtete schon alte Scripte darauf hin nochmal untersuchen zu müssen. Aber dann fand ich doch noch im Netz die Erklärung dazu, scheint wohl nur ein Problem unter Windows zu sein. Aber gut, werde dennoch (muss jeder für sich entscheiden) ab sofort strpos bevorzugen, auch wenn ich dann u.U. auch noch strtolower oder sonst was vorbereiten muss.

    Wenn Du uns grundsätzlich etwas mehr Rahmenbedingungen offenlegen würdest, könnte vielleicht auch dieser Thread einen Nutzen entwickeln.

    Denn vielleicht solltest Du sowieso besser die Multibytefunktion benutzen und das Default-Characterset, sowie das internal Encoding auch einstellen im Script. Dann klappts bestimmt auch mit PHP für Windows.

    Glück Auf
    Tom vom Berg

    --
    Es gibt nichts Gutes, außer man tut es!
    Das Leben selbst ist der Sinn.
    1. problematische Seite

      Hallo TS,

      Schön, dass Du mal darüber geschrieben hast ;-)

      weiß nicht was daran so lustig sein soll, gibt dadurch die Möglichkeit, dass es jemand en passant im Hinterkopf behält (ah da war doch mal was) oder bei konkreter Suche hier landet.

      Wenn Du uns grundsätzlich etwas mehr Rahmenbedingungen offenlegen würdest, könnte vielleicht auch dieser Thread einen Nutzen entwickeln.

      Wenn meine Beschreibung auf so eine simple Sache (suche auf Treffer in grossem Text) nicht reicht, dann sicher die Beispiele im Link, oder?

      Denn vielleicht solltest Du sowieso besser die Multibytefunktion benutzen und das Default-Characterset, sowie das internal Encoding auch einstellen im Script. Dann klappts bestimmt auch mit PHP für Windows.

      Auch mit mb_stripos scheints manchmal Probleme unter Windows zu geben. Mit PHP klappts auch so bei Windows. Lediglich stripos ist mit Vorsicht zu genießen und falls du die Infos vom Verweis nicht gelesen hast:

      • After having analyzed the problem, it seems to be the windows implementation that has serious performance problems in comparison to libc. Nothing we can do against that.

      Gruss
      Henry

      --
      Meine Meinung zu DSGVO & Co:
      „Principiis obsta. Sero medicina parata, cum mala per longas convaluere moras.“
      1. problematische Seite

        • After having analyzed the problem, it seems to be the windows implementation that has serious performance problems in comparison to libc. Nothing we can do against that.

        Danke für den Tipp. Da "PHP auf Windows-Hosts" nicht dem Setup meiner primäre Zielgruppe entspricht (und weil ich auch nicht auf Windows-Hosts entwickle), aber regelmäßig an "datenlastigen" Anwendungen stricke, habe ich so für den Fall der Fälle etwas für den Hinterkopf.