2010-08-13 6 views
4

J'utilise CURL dans mon script PHP et je veux écrire des informations de CURLOPT_VERBOSE dans le fichier. J'ai essayé CURLOPT_STDERR mais sans chance. Il imprime toujours tout dans la fenêtre cmd. Je ne suis pas sûr si paramètre dans curl_setopt ($ ch, CURLOPT_STDERR, $ errFileHandle); devrait être gestionnaire de fichiers ou nom de fichier (les deux ne fonctionnent pas).Comment écrire des informations détaillées dans un fichier?

+0

Comme pour « gestionnaire de fichiers ou le nom de fichier », le manuel dit clairement « ressource (utilisant fopen(), pour exemple) "(c'est-à-dire gérer le fichier). Avez-vous l'affichage d'erreur ou la connexion activée? si oui, quelles erreurs voyez-vous? sinon, pourquoi pas? Le fichier est-il ouvert avec fopen()? L'ouvrez-vous avec un chemin absolu ou relatif? (Si relatif, il sera dans le répertoire de travail actuel, que vous pouvez déterminer avec getcwd()). Pouvez-vous éventuellement poster votre code pertinent pour nous aider? – GZipp

+0

@Sten, si la réponse fournie répond à votre question, pourriez-vous la choisir comme réponse pour que cette question de longue date soit close? THX. –

Répondre

4

Exécution sur un système d'exploitation basé sur Unix? Utilisez le ci-dessous sur la ligne de commande pour exécuter votre script. En utilisant Windows OS, utilisez la commande sur Cygwin.

php yourPhp.php > yourFile.txt 

Ou vous pouvez simplement l'exécuter en mode bavard avec un fichier gérer

<?PHP 

$verbosPath = __DIR__.DIRECTORY_SEPARATOR.'verboseOut.txt'; 
echo "Saving verbose output to: $verbosPath\n"; 

$handle=curl_init('http://www.google.com/'); 
curl_setopt($handle, CURLOPT_VERBOSE, true); 
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($handle, CURLOPT_STDERR,$f = fopen($verbosPath, "w+")); 
curl_exec($handle); 

fclose($f); 
?> 
Questions connexes