2010-08-17 12 views
6

j'utilisais boucle à partir de scripts shell et option -s été mise en -s curl, de faire pour le faire taire .. s'il vous plaît dire comment définir cette option dans curl php ..php cURL option silencieuse?

Merci

+1

Pourquoi avez-vous besoin d'une option silencieuse en PHP? Curl ne sort rien, alors qu'est-ce que ça veut dire? – ircmaxell

+0

@ircmaxell quoi? curl_exec renvoie le corps de la réponse à stdout par défaut! – hanshenrik

Répondre

6

vous souhaitez définir le réglage de CURLOPT_MUTE lors de l'initialisation de la connexion:

curl_setopt($curl_resource, CURLOPT_MUTE, 1); 
+0

Ceci est obsolète! – Sangar82

3

On dirait CURLOPT_MUTE a été dépréciée dans les versions récentes de PHP. J'utilise PHP 5.3.6 et je reçois Use of undefined constant CURL_MUTE - assumed 'CURL_MUTE' chaque fois que j'essaie de définir cette option.

20

http://php.net/manual/en/ref.curl.php

Dans les versions récentes de PHP, CURLOPT_MUTE a (probablement) été dépréciée. Toute tentative d'utiliser curl_setopt() pour définir CURLOPT_MUTE vous donnera un avertissement comme celui-ci:

PHP Notice: L'utilisation de CURLOPT_MUTE constante indéfinie - supposée « CURLOPT_MUTE » dans ....

Si vous souhaitez silence la sortie boucle, utilisez ce qui suit à la place:

<?php 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
?> 

Et puis,

<?php 
    $curl_output=curl_exec($ch); 
?> 

La sortie de l'opération curl sera stockée sous forme de chaîne sous $curl_output pendant que l'opération reste totalement silencieuse.

+0

Merci m'a sauvé une séance massive de headscratching – Anigel

2

Ce poste est assez vieux, mais pour les futurs qui recherchent cette réponse, vous devez utiliser ces deux options dans la version actuelle de php5-curl:

<?php 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_VERBOSE, false); 
?> 

La première renvoie l'option la réponse brute de curl_exec() afin qu'il puisse être assigné à une variable. La deuxième option empêche curl_exec() d'imprimer la réponse.

0

là.

Si vous souhaitez réinitialiser la poignée de la boucle, utilisez curl_reset($curl_handle).

CURLOPT_MUTE a été dépréciée dans les versions récentes de PHP