parse_str

(PHP 4, PHP 5, PHP 7, PHP 8)

parse_strConverte a string em variáveis

Descrição

parse_str(string$string, array&$result): void

Interpreta string como se ela fosse uma query string passada via URL e cria variáveis no escopo atual ou no array se informado em result.

Parâmetros

string

The input string.

result

Se o segundo parâmetro result for informado, as variáveis serão gravadas como elementos de array.

Aviso

Utilizar esta função sem o parâmetro result é altamente DESENCORAJADO e foi DESCONTINUADO a partir do PHP 7.2. Desde o 8.0.0, o parâmetro result é obrigatório.

Valor Retornado

Nenhum valor é retornado.

Registro de Alterações

VersãoDescrição
8.0.0result não é mais opcional.
7.2.0 Utilização de parse_str() sem o segundo parâmetro agora emite um aviso de E_DEPRECATED.

Exemplos

Exemplo #1 Using parse_str()

<?php
$str
= "first=value&arr[]=foo+bar&arr[]=baz";

// Recommended
parse_str($str, $output);
echo
$output['first']; // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz

// DISCOURAGED
parse_str($str);
echo
$first; // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz
?>

Como variáveis no PHP não podem conter pontos ou espaços em seus nomes, estes são convertidos em underlines. O mesmo se aplica aos nomes de chaves de array no caso de utilizar esta função com o parâmetro result.

Exemplo #2 Name mangling em parse_str()

<?php
parse_str
("My Value=Something");
echo
$My_Value; // Something

parse_str("My Value=Something", $output);
echo
$output['My_Value']; // Something
?>

Notas

Nota:

Todas as variáveis criadas, ou os valores informados no array do segundo parâmetro, já estarão automaticamente convertidos porurldecode().

Nota:

Para obter a QUERY_STRING em si, vocẽ pode utilizar a variável $_SERVER['QUERY_STRING']. Além disso, leia a seção sobre variáveis de fontes externas.

Veja Também

To Top