"We are back" « oc.at

php befehl

Seppo 12.12.2005 - 15:08 1147 12
Posts

Seppo

Addicted
Registered: Jun 2002
Location: Waldviertel/Wien
Posts: 401
kennt jemand einen php befehl der das selbe kann wie str_replace nur das er nicht case-sensitive ist?

danke im voraus

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Ist die PHP-Doku so schlecht, dass sich keiner Nachlesen traut? Ich mach auch nix anderes als nachzulesen, dauert 5 Sekunden.

Das suchst du wohl:
http://mirrors.inway.cz/manual/en/f...tr-ireplace.php

Seppo

Addicted
Registered: Jun 2002
Location: Waldviertel/Wien
Posts: 401
jaa genau sowas such ich... nur für php4 :(

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4303
hätte nicht gedacht, daß der erst ab php5 existiert.
nimm halt preg_replace.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4477
preg_replace ist ziemlich Speicherhungrig .. besser die ereg-Funktionen

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4303
lt. doku sind die ereg aber schneller.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4477
du meinst jetzt preg nehme ich an .. ja .. kommt drauf an: resourcen oder performance. Hatte einen Fall, wo die resourcen nicht ausreichten, weil eben preg_replace den Speicher irgendwie nicht zurueckgegeben hat.

Seppo

Addicted
Registered: Jun 2002
Location: Waldviertel/Wien
Posts: 401
danke euch leute!
hab mich für eregi_replace entschieden :)

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4303
klar mein ich preg. war nur ein vertipper.

vielleicht wars nur ein fehler inder php-version, daß preg den spiecher nicht wieder hergegeben hat. hast du das mal getestet?

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4477
Klar. Ist in allen PHP-Versionen so. Ist nun mal das verhalten von preg.

Beispiel:
Code:
<?php
        var_dump(memory_get_usage());
        $input = str_pad("", 50000, "foo");
        var_dump(memory_get_usage());
        $input = preg_replace(";foo;", "bar", $input);
        var_dump(memory_get_usage());

$ php test.php
int(15208)
int(65312)
int(115352)

Bei ereg* tritt das nicht auf. Bei grossen Strings bei memory_limit wirds dann problematisch.

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4303
gut zu wissen, danke :)

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
afaik macht php sowieso keine garbage-collection zur laufzeit, wenn's script aus is' müsst memory-usage aber wieder normal sein.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4477
Wenn du aber mehrere grosse Strings in einem Request hast musst aufpassen. Das musst aber eben nur bei preg* und nicht bei ereg*.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz