2012-05-30 9 views
0

J'apprends le php. Je veux écrire une chaîne dans un fichier, mais rien ne se passe. Comment puis-je le déboguer? J'ai de l'expérience avec python. là, je pourrais utiliser le terminal pour essayer de petits extraits de code, mais je ne sais pas comment vérifier le code en php.php. écrire dans le fichier

$myFile = "testFile.txt"; 
$fh = fopen($myFile, 'w'); 
$stringData = "Bobby Bopper\n"; 
$myvar = fwrite($fh, $stringData); 
$stringData = "Tracy Tanner\n"; 
fwrite($fh, $stringData); 
fclose($fh); 
+2

Assurez-vous que vous avez des autorisations d'écriture dans le dossier que vous écrivez. Si vous utilisez un OS de style Unix, les permissions doivent être 777 (read write execute) –

Répondre

4

Debugging en php commence toujours avec le retournement des rapports d'erreur

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', true); 


$myFile = "testFile.txt"; 
$fh = fopen($myFile, 'w'); 
$stringData = "Bobby Bopper\n"; 
$myvar = fwrite($fh, $stringData); 
$stringData = "Tracy Tanner\n"; 
fwrite($fh, $stringData); 
fclose($fh); 

les chances sont bonnes que vous maintenant voir un message d'erreur quelque peu descriptif. googling php messages d'erreur est souvent utile.

5

Sauf si vous avez vraiment besoin d'utiliser des gestionnaires de fichiers, faire ceci:

$myFile = "testFile.txt"; 
$stringData = "Bobby Bopper\nTracy Tanner\n"; 
file_put_contents($myFile,$stringData); 
0

Cela ressemble au code correct. Essayez de vérifier que vous avez le bon chemin de fichier. Un moyen facile de le faire est

$myFile = "testFile.txt"; 
$fh = fopen($myFile, 'w'); 
$stringData = "Tracy Tanner\n"; 
fwrite($fh, $stringData); 
fclose($fh); 

$fh = fopen($myFile, 'r'); 
$value = fgets($fh); 
echo $value; 
fclose($fh);