Domanda

Ho provato questo:

    <?php
$fileip = fopen("test.txt","r");

?>

questo avrebbe dovuto aprire il file in sola lettura umore ma non è così il file test.txt è nella stessa cartella di quella di index.php (cartella principale del progetto)

il file non si apre

e quando ho messo eco come:

echo $fileip;

è tornato

Resource id # 3

È stato utile?

Soluzione

ha aperto bene il file, non è possibile eco in quel modo perché è un puntatore a file, non il contenuto del file stesso. È necessario utilizzare fread() per leggere il contenuto effettivo, o meglio ancora, utilizzare il file_get_contents() ottenere il contenuto immediatamente.

In questo modo tuo:

$handle = fopen("test.txt", "r");
$fileip = fread($handle, filesize($filename));
fclose($handle);

echo $fileip;

In alternativa, utilizzando file_get_contents():

$fileip = file_get_contents("test.txt");

echo $fileip;

Altri suggerimenti

Da php.net:

  

Restituisce una risorsa puntatore a file su   successo, oppure FALSE in caso di errore.

Dal momento che un resource è stato restituito, il file è aperto con successo, avete bisogno di ulteriori operazioni come fwrite, ecc sul vostro file. Quindi non v'è alcun errore, il file è lì per essere manipolato .

Se si ottiene un ID di risorsa come risultato della chiamata fopen, poi è riuscito, perché restituirà FALSE se fallisce. Quindi, ciò che rende esattamente dubitare che il file è effettivamente aperto?

http://www.php.net/fopen per ulteriori informazioni.

Hai aperto solo un handle di file, non il file stesso.

Se si sta utilizzando PHP5 -., Che si dovrebbe essere per un nuovo sviluppo, si potrebbe invece utilizzare $ fileip = file_get_contents ( "test.txt"), che leggerà il contenuto di questo file nel buffer

Un esempio completo.

<?php
    $fileip = file_get_contents("test.txt");

    echo($fileip);
?>

Per emettere il contenuto del file di testo:

$fh   = fopen('myfile.txt', 'r');
$text = fread($fh, filesize('myfile.txt'));
echo $text;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top