Thursday, January 12, 2012

Filter array in PHP using keywords?


What could I add to the following code to filter the returned results using keywords in an array?



The code that send the keywords, and made the funciton call is in Javasript.



The code below opens a file, takes a pointer using a request, opens the file finds the pointer, and retrieves all log lines from the pointer to the end of the file. Then it formats it into a JSON object and sends back to Javacript.




function tail(){
$keywords = json_decode($_REQUEST['keywords']);

$file = "/path/to/the/log.log";
$handle = fopen($file, "r");
clearstatcache();

if ($_REQUEST['pointer'] == '') {
fseek($handle, -1024, SEEK_END);
} else {
fseek($handle, $_REQUEST['pointer']);
}

while ($buffer = fgets($handle)) {
$log .= $buffer . "<br />\n";
}



$output = array("pointer" => ftell($handle), "log" => $log);
fclose($handle);

echo json_encode($output);
}



Please tell me how I can filter the retrieved data using the keywords in the keywords array.

No comments:

Post a Comment