PHP数组和可变的变量
问题描述:
使用数组$s_filters
看起来像这样(很多不同的密钥可能):PHP数组和可变的变量
Array
(
[genders] => m
[ages] => 11-12,13-15
)
我如何编程这个数组转换成这样:
$gender = array('m');
$ages = array('11-12','13-15');
所以基本上循环通过$s_filters
并创建新的数组,其名称是关键,值应该在","
上爆炸;
我尝试使用可变变量:
foreach($s_filters as $key => $value)
{
$$key = array();
$$key[] = $value;
print_r($$key);
}
但是这给了我cannot use [] for reading
错误。我在正确的轨道上吗?
答
$s_filters = Array
(
"genders" => "m",
"ages" => "11-12,13-15"
);
foreach($s_filters as $key=>$value)
{
${$key} = explode(',', $value);
}
header("Content-Type: text/plain");
print_r($genders);
print_r($ages);
答
$gender = $arr['gender'];
你想有什么是不可读的,难以调试,并总的来说是一个糟糕的做法它绝对可以处理得更好。