Maison >développement back-end >tutoriel php >Comment traduire cURL de ligne de commande en PHP cURL ?

Comment traduire cURL de ligne de commande en PHP cURL ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-06 02:39:09563parcourir

How to Translate Command Line cURL to PHP cURL?

Traduction de cURL de ligne de commande en PHP cURL

Lorsque vous travaillez avec des API prenant en charge cURL, il peut être difficile de traduire ces commandes à partir de la commande ligne vers un script PHP. Cet article fournit une solution détaillée pour convertir une commande cURL spécifique en PHP.

Commande cURL originale :

curl -b cookie.txt -X PUT \
     --data-binary "@test.png" \
     -H "Content-Type: image/png" \    
     "http://hostname/@api/deki/pages/=TestPage/files/=test.png" \
     -0

Traduction PHP cURL :

Pour répliquer cette commande en PHP, vous pouvez suivre ces étapes :

  1. Définir des variables pour les parties dynamiques de l'URL et du nom de fichier :

    $pageurl = "http://hostname/@api/deki/pages/=TestPage/files/=";
    $filename = "test.png";
  2. Construire l'URL complète :

    $theurl = $pageurl . $filename;
  3. Initialiser le cURL request :

    $ch = curl_init($theurl);
  4. Définissez les options cURL pour qu'elles correspondent à la commande d'origine :

    // Set cookie (if available)
    curl_setopt($ch, CURLOPT_COOKIE, ...); // -b
    
    // Set method to PUT
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); // -X
    
    // Enable binary transfer for file upload
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, TRUE); // --data-binary
    
    // Set content type
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: image/png']); // -H
    
    // Force HTTP/1.0 version
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); // -0
  5. ... (Code supplémentaire qui suit)

En suivant ces étapes, vous pouvez traduire avec succès votre commande cURL de ligne de commande en PHP, vous permettant ainsi d'interagir avec l'API à partir de votre script. Pour plus de détails sur les options cURL, reportez-vous au manuel PHP : http://www.php.net/manual/en/function.curl-setopt.php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn