2010-08-17 23 views
6

Stavo usando ricciolo da script di shell e è stato la creazione -s opzione ricciolo -s, di fare per renderlo silenzioso .. informi come impostare questa opzione in php ricciolo ..php cURL opzione silenziosa?

Grazie

+1

Perché avete bisogno di una soluzione silenziosa in PHP? Curl non produce nulla, quindi su cosa deve tacere? – ircmaxell

+0

@ircmaxell cosa? curl_exec restituisce il corpo della risposta allo stdout di default! – hanshenrik

risposta

6

si desidera impostare l'impostazione CURLOPT_MUTE durante l'inizializzazione del collegamento:

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

Questo è deprecato! – Sangar82

3

Sembra CURLOPT_MUTE è stata deprecata nelle ultime versioni di PHP.

Sto usando PHP 5.3.6 e sto ricevendo Use of undefined constant CURL_MUTE - assumed 'CURL_MUTE' ogni volta che provo a impostare questa opzione.

20

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

Nelle recenti versioni di PHP, CURLOPT_MUTE ha (probabilmente) stato deprecato. Qualsiasi tentativo di usare curl_setopt() per impostare CURLOPT_MUTE vi darà un avvertimento come questo:

PHP Avviso: l'uso di indefinito CURLOPT_MUTE costante - assunto 'CURLOPT_MUTE' in ....

Se si desidera silenzio l'uscita arricciatura, utilizzare la seguente invece:

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

E poi,

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

L'uscita dell'operazione di arricciatura verrà memorizzata come una stringa in $curl_output mentre l'operazione rimane totalmente silenziosa.

+0

Grazie, mi ha salvato un'enorme sessione di headscratching – Anigel

2

Questo post è piuttosto vecchio, ma per le persone future alla ricerca di questa risposta, è necessario utilizzare queste due opzioni nella versione corrente di PHP5-curl:

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

La prima opzione restituisce la risposta prima da curl_exec() in modo che possa essere assegnato a una variabile. La seconda opzione impedisce a curl_exec() di stampare la risposta.

0

lì.

Se si desidera ripristinare la maniglia di arricciatura, utilizzare curl_reset($curl_handle).

CURLOPT_MUTE è stata deprecata nelle ultime versioni di PHP