Autor Zpráva
Tori
Profil
V souvislosti s vláknem unikatny vyskyt vysledku - PHP mne napadlo, jestli je rozdíl v použití file_get_contents + strpos oproti grep (přes funkci exec)? grep -q -m 1 spotřebuje málo paměti, což je určitě výhoda v případě velkých souborů.

Zajímalo by mne: Mohlo by mít nějakou nevýhodu použití systémových funkcí místo pouhého PHP, např.větší nárok na procesor, nutnost zjišťovat OS apod.?
Davex
Profil
Tori:
je rozdíl v použití file_get_contents + strpos oproti grep (přes funkci exec)?
Soubor se nemusí načítat celý pomocí funkce file_get_contents a paměťové nároky lze snížit cyklem přes fopen a fread, ale musí se hlídat výskyty na přelomu bufferu - část může být na začátku nebo na konci. U velkých souborů bude PHP funkce strpos pomalejší než algoritmus Boyer-Moore v grepu.

Mohlo by mít nějakou nevýhodu použití systémových funkcí místo pouhého PHP
Hlavní nevýhoda je v tom, že volání externích programů není univerzálně použitelné. Na většině webhostingů jsou funkce exec, passthru, shell_exec, system zakázané.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0