Domanda

Quando assegno una matrice di dati per essere pubblicato come opzione Curl (via CURLOPT_POSTFIELDS), ho bisogno di UrlEncode che i dati prima o sarà che essere curato?

Altri suggerimenti

Non è necessario UrlEncode prima. Tuttavia, è importante rendersi conto che passare una matrice renderà Curl inviarlo come multipart/form-data, il che spiega il motivo per cui è non ha bisogno di farsi urlencoded (dal né voi né cURL), ed è necessario utilizzare un array se si desidera caricare File. Se http_build_query() primo (e inviarlo come una stringa) che sarà trattata come application/x-www-form-urlencoded.

Un problema con l'utilizzo di una matrice per CURLOPT_POSTFIELDS è che non si può avere una coppia nome-valore con un valore vuoto.

I dati POST non viene aggiunto all'URL (come GET) in modo non c'è bisogno di URLEncode esso.

Io uso:

curl_setopt($curl , CURLOPT_POSTFIELDS, $array );

invece che:

curl_setopt($curl , CURLOPT_POSTFIELDS, http_build_query($array)  );
scroll top