PHP rawurlencode() Function

Quick summary: The PHP rawurlencode() function encodes a string according to RFC 3986.

PHP rawurlencode() Syntax

rawurlencode(string $string): string
PHP

PHP rawurlencode() Basic examples

var_dump(rawurlencode('hello world'));
PHP
Output:
string(11) "hello%20world"

Encodes spaces as %20.

PHP rawurlencode() Real-world usage

$path = 'images/photo 1.jpg';
echo rawurlencode($path);
PHP
Output:
images%2Fphoto%201.jpg

Encodes URL paths safely.

PHP rawurlencode() Edge cases

var_dump(rawurlencode('a+b'));
PHP
Output:
string(5) "a%2Bb"

Plus signs are encoded.

PHP rawurlencode() Common mistakes

Using rawurlencode for query strings

Query strings use different encoding rules.

Incorrect
rawurlencode('a=b&c=d');
Correct
urlencode('a=b&c=d');

Use urlencode for query strings.

PHP rawurlencode() Frequently Asked Questions

What does rawurlencode() do?

Encodes a string according to RFC 3986.

Difference from urlencode()?

Spaces become %20 instead of +.

Use case?

Encoding URL path segments.

Is it reversible?

Yes with rawurldecode().

Handles UTF-8?

Yes.

Does it modify string?

No.

Common mistake?

Using urlencode for paths.

Performance?

Fast.

Used for query params?

Not ideal.

Used for REST URLs?

Yes.

Encodes special chars?

Yes.

Alternative?

urlencode().

PHP rawurlencode() Related PHP Functions