Busca la funcion que necesitas!

jueves, 6 de enero de 2011

PHP - Clase sArchivos

Fué una clase que hize hace un tiempecito para prácticar con archivos, contiene 3 funciones, si se les ocurre una interesante comentenla y yo la implementaré o sientanse libres de modificar la clase

<?php
/**************************
* Coder: Linkgl           *
* Web:Funcion-linkgl.blogspot.com   *
* clase sArchivos         *
**************************/
class sArchivos
{
  //Esta funcion escribe en un archivo empezando desde un offset determinado
  function sEscribirOffset($fArchivo,$offset,$data)
  {
    if($f=fopen($fArchivo,"a"))
    {
      $todo=file_get_contents($fArchivo);
      $corte=substr($todo,$offset-1);
      ftruncate($f,$offset-1);
      fwrite($f,$data.$corte);
      fclose($f);
      return true;
    }
    else
      return false;
  }
  //Te devuelve true si la cadena existe en el archivo o false si no
  function sExiste($fArchivo,$sDato1)
  {
    if(strpos(file_get_contents($fArchivo),$sDato1) === false)
      return false;
    else
      return true;
  }
  //Esta funcion escribe la cadena indicada si no esta escrita aun en el archivo
  function sEscribirCmp($fArchivo,$sData)
  {
    if(strpos(file_get_contents($fArchivo),$sData) === false)
    {
      $f=fopen($fArchivo,"a");
      fwrite($f,$sData);
      fclose($f);
      return true;
    }
    else
      return false;
  }
}

//uso ->
$s=new sArchivos();
if($s->sExiste("text.txt","hola mundo")===false)
{
  $s->sEscribirOffset("text.txt",5,"hola mundo");
  if($s->sEscribirCmp("text.txt","adios")===true)
  {
    echo "El txt ya contiene hola mundo en el offset 5 y adios gracias a la clase =)";
  }
}
?>

Se describe lo que hace cada funcion en los comentarios del código.
Sugerencias dudas o críticas en los comentarios.

No hay comentarios:

Publicar un comentario