X-Git-Url: https://git.llucax.com/z.facultad/75.43/tp1.git/blobdiff_plain/4c7133fbb8f5557635b6d639b3da76071af6e059..727459886e63cdaf938bc5bf6c5659e7525c852a:/src/lib/file.php?ds=sidebyside diff --git a/src/lib/file.php b/src/lib/file.php index 63beeb5..812cfcc 100644 --- a/src/lib/file.php +++ b/src/lib/file.php @@ -30,4 +30,53 @@ if (!function_exists('fputcsv')) { } } +/** + * Agrega una entrada al final de un archivo csv. + * + * @return bool false si hay error. + */ +function fappendcsv($filename, $fields, $delim = ',') +{ + if (($f = fopen($filename, 'a')) === false) return false; // error + fputcsv($f, $fields, $delim); + fclose($f); + return true; +} + +/** + * Obtiene un archivo csv como array de arrays + * + * @return array de array (false si hubo error). + */ +function fgetallcsv($filename, $delim = ',') +{ + if (($f = fopen($filename, 'r')) === false) return false; + $data = array(); + while ($row = fgetcsv($f, 4096, $delim)) $data[] = $row; + fclose($f); + return $data; +} + +/** + * Obtiene una fila de un archivo cvs buscando según una clave. + * Se busca la fila cuyo campo $id coincida con $what. + * + * @return array fila buscada o false si hubo error o no está. + */ +function fsearchcsv($filename, $what, $id = 0, $delim = ',') +{ + if (($f = fopen($filename, 'r')) === false) return false; + while (!feof($f)) + { + $d = fgetcsv($f, 4096); + if ($d[$id] == $what) + { + fclose($f); + return $d; + } + } + fclose($f); + return false; +} + ?> \ No newline at end of file