我拥有以下数组
$array = array(
array(
"name" => "Jacky O'Macky",
"groups" => array (
array (
"Joseph O'Brien",
"Jenna Williams"
),
array (
"Shaq O'Neil",
"John Fabio"
)
)
),
array(
"name" => "Nate O'Grady",
"groups" => array (
array (
"Joseph O'Brien",
"Jenna Williams"
),
array (
"Shaq O'Neil",
"John Fabio"
)
)
)
);
我想遍历每个数组,并使用htmlspecialchars()
处理带有撇号的名称,并保持相同的多维数组结构。
这是我到目前为止所拥有的
function htmlentities_array($array)
{
if (is_array($array))
{
foreach($array as $key => $value)
{
if (is_string($value))
{
$array[$key] = htmlspecialchars($value);
}
else
{
$array[$key] = htmlentities_array($value);
}
}
}
else
{
$array = htmlspecialchars($array);
}
return $array;
}
我通过$array = htmlentities_array(array)
打电话给我。它似乎只在第一级起作用。
答案 0 :(得分:6)
你在这里
Group.objects.exclude(
id__in=request.user.groups.all().values_list("id", flat=True)
)
.annotate(users=Count("user"))
.order_by("-users")
输出
array_walk_recursive ($array, function(&$v,$k){
$v = htmlspecialchars($v, ENT_QUOTES);
});
print_r($array);
简单...