Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP cURL curl_escape() Function



The PHP Client URL curl_escape() function is used to URL-encode a string. When strings are used in URLs, this function helps to make sure they are encoded correctly for safe online transmission.

Syntax

Below is the syntax of the PHP cURL curl_escape() function −

string curl_escape ( resource $ch, string $str )

Parameters

Here are the required parameters of the curl_escape() function −

  • $ch(Required) − This is the cURL handle returned by curl_init().

  • $str(Required) − This is the string to be URL-encoded.

Return Value

The curl_escape() function returns the URL-encoded string on success or FALSE if an error occurs.

PHP Version

First introduced in core PHP 5.5.0, the curl_escape() function continues to function easily in PHP 7, and PHP 8.

Example 1

First we will show you the basic example of the PHP cURL curl_escape() function to URL encode a string.

<?php
   // Create a new cURL resource
   $ch = curl_init();
   $escaped_string = curl_escape($ch, 'Hello, world!');
   curl_close($ch);
   
   echo $escaped_string;

Output

Here is the outcome of the following code −

Hello%2C%20world%21

Example 2

In the below PHP code we will try to use the curl_escape() function and encode the provided email address.

<?php
   // Initialize a cURL session
   $ch = curl_init();
   $email = 'abc@tutorialspoint.com';
   $encoded_email = curl_escape($ch, $email);
   $url = "http://tutorialspoint.com/subscribe.php?email={$encoded_email}";
   
   // Use $url in cURL request
   echo $url;
?> 

Output

This will generate the below output −

http://tutorialspoint.com/subscribe.php?email=abc%40tutorialspoint.com

Example 3

Now we will use the curl_escape() function and encode the given URL.

<?php
   // Initialize a cURL session
   $ch = curl_init();
   $query = 'PHP cURL tutorial';
   $encoded_query = curl_escape($ch, $query);
   $url = "http://tutorialspoint.com/search.php?q={$encoded_query}";
   
   echo "The encoded URL is: " . $url;
?> 

Output

This will create the below output −

The encoded URL is: http://tutorialspoint.com/search.php?q=PHP%20cURL%20tutorial

Example 4

This is an additional PHP example code that uses the curl_escape() method to safe URL usage, the location string "Delhi / Chandni Chowk" is encoded and sent as a GET parameter to a server-side script called "add_location.php.".

<?php
   // Create a curl handle
   $ch = curl_init();

   // Escape a string used as a GET parameter
   $location = curl_escape($ch, 'Delhi / Chandni Chowk');

   // Create an URL with the location
   $url = "http://abc123.com/add_location.php?location={$location}";

   echo $url;

   // Send HTTP request
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_exec($ch);

   // Close the handle
   curl_close($ch);
?> 

Output

This will produce the following output −

http://abc123.com/add_location.php?location=Delhi%20%2F%20Chandni%20Chowk

Summary

The curl_escape() method is a built-in function to URL-encode a string. So this function is very useful for checking that strings used in URLs or other parts of URLs are properly encoded for secure internet transmission.

php_function_reference.htm
Advertisements