2011-05-23 15 views
6

Estoy buscando una función que cuente el número de veces que ocurre una cadena dentro de un archivo, traté de usar $count = preg_match_all("/String/", $file, $matches); pero devuelve Warning: preg_match_all() expects parameter 2 to be string, resource given. ¿Hay alguna función que me permita hacer esto con un archivo, en lugar de una cadena, o hay alguna forma de asignar un archivo a una cadena (supongo que esto último sería mucho más lento)?PHP buscando una cadena en un archivo

+1

lo necesario para pasar un valor de cadena para el segundo parámetro. Quizás puedas hacer: 'file_get_contents ($ filename)' para ese argumento. –

Respuesta

11

sí:

file_get_contents() - Lee un archivo entero en una cadena

http://php.net/manual/en/function.file-get-contents.php

lo que para usted sería

$file = file_get_contents(PATH_TO_FILE); 
$count = preg_match_all("/String/", $file, $matches); 

supongo que tiene utilizado fopen ins tead por error?

+0

gracias felix, flojera por mi parte –

+0

Sí, he estado usando 'fopen', pero' file_get_contents' es exactamente lo que necesitaba. Gracias. – John

Cuestiones relacionadas