Ali
Ali

Reputation: 267187

Swap an array element's key and value

Is there a function which makes:

$array['blue'] = 'Color';

To:

$array['Color'] = 'blue'

And also, is there a limit on what characters can go inside an array index?

Upvotes: 2

Views: 713

Answers (2)

usoban
usoban

Reputation: 5478

array_flip() exchanges all keys with their associated values in an array. Any characters can be used in the key, however keep in mind that keys must be unique, so:

$array['blue'] = 'Color';
$array['red']  = 'Color';
$array = array_flip($array);

Yields only:

Array
(
    [Color] => red
)

Upvotes: 12

altermativ
altermativ

Reputation: 690

As for the type of characters that can be used as a key, there seems to be no limit (accents, quotes, and other characters are accepted).

As for the size limit, there isn't any either, the only restriction is the script's memory limit (see "What is the max key size for an array in PHP?"

Couldn't find any official PHP documentation mentioning this though.

Upvotes: 1

Related Questions