kra*_*tty 5 php arrays urlencode multidimensional-array
我已经搜索过高和低的解决方案.我有一个动态多维数组我需要分解和urlencode.项目数量将发生变化,但它们将始终具有相同的密钥.
$formFields = Array (
[0] => Array ( [form_name] => productID [form_value] => 13 )
[1] => Array ( [form_name] => campaign [form_value] => email@gmail.com )
[2] => Array ( [form_name] => redirect [form_value] => http://example.com ) )
Run Code Online (Sandbox Code Playgroud)
每个数组都有一个表单名称和一个表单值.
这就是我想要达到的目的:
$desired_results =
productID => 13
campaign => email@gmail.com
redirect => http://example.com
Run Code Online (Sandbox Code Playgroud)
每当我尝试将它们拆分时,我最终得到:form_name => productID或类似的东西.
我正在尝试取结果,然后对它们进行urlencode:
productID=13&campaign=email&gmail.com&redirect=http://example.com&
Run Code Online (Sandbox Code Playgroud)
emu*_*tac 18
你可以使用序列化和反序列化:
$str = urlencode(serialize($formFields));
Run Code Online (Sandbox Code Playgroud)
然后解码它:
$formFields = unserialize(urldecode($str));
Run Code Online (Sandbox Code Playgroud)
无论键的名称如何,这都会返回值。
$result = array();
foreach ($formFields as $key => $value)
{
$tmp = array_values($value);
$result[$tmp[0]] = $tmp[1];
}
print(http_build_query($result));
Run Code Online (Sandbox Code Playgroud)
循环foreach遍历主数组,将子数组存储在变量 中$value。函数array_values将每个数组中的所有值作为新的数值数组返回。[form_name] 的值将存储在第一个索引中,[form_value] 将存储在第二个索引中。
内置的http_build_query函数将返回一个 urlencoded 字符串。
| 归档时间: |
|
| 查看次数: |
15845 次 |
| 最近记录: |