Tengo ya buen rato con este problema y no logro dar con la solución. El objetivo es escribir una línea en un archivo externo, en una posición específica. Hasta ahí todo funciona bien.
El caso es que cada vez que actualizo la página que tiene el código, la otra también se actualiza. Quisiera que sólo escribiera la línea cuando ésta no se encuentre presente, en lugar de escribirla todo el tiempo. Aquí está el código:
Código PHP:
$texto = 'mi texto';
$archivo = 'mi-archivo.php');
$conteo = 1;
$leer = file($archivo);
$buscar = $leer[$conteo];
for( $i = 0 ; $i < count($leer) ; $i++ ) {
$leer[$i] = trim($leer[$i]);
if( $i == $conteo ) $leer[$i] = $texto;
}
if($buscar == '') { // Aquí es donde debería funcionar, pero no
$nueva_linea = implode( "\n", $leer );
$abrir = fopen( $archivo , 'w' );
fwrite( $abrir , $nueva_linea , strlen($nueva_linea) );
fclose($abrir);
}
Le coloqué esa condicional (escribir la línea sólo si $buscar está vacío ) pero lo pasa por bola y sobrescribe de todas maneras ¿Cómo le hago para que -si la línea tuviera el mismo texto que
$texto- la operación sólo llegue hasta
file() y no ejecute fopen, fwrite y fclose?.