$ jobs là một mảng được truy xuất từ truy vấn DB. print_r($jobs)
show:Áp dụng một hàm tất cả các giá trị trong một mảng
Array
(
[ID] => 131
[Title] => -bla-
[Baseline] => lorem ipsum ...
[Description] => <ul><li>list 1</li><li>list 2</li></ul>
[EventID] => 1008
)
Array
(
[ID] => 132
[Title] => -bla 2-
[Baseline] => lorem ipsum lorem ipsum...
[Description] => <ul><li>list 1</li><li>list 2</li></ul>
[EventID] => 1009
)
vv ...
muốn chạy utf8_encode() trên tất cả các giá trị của các mảng. Tôi không chắc chắn nếu tôi nên sử dụng array_map, array_walk_recursive? Đầu ra không được thay đổi tên của các khóa mảng sao cho tôi không cần phải thay đổi bất cứ điều gì trong mẫu của mình, do đó,
<h1><?=$j['title']?></h1>
vẫn hoạt động, mặc dù đã được mã hóa.
EDIT: Tôi đang cố gắng điều sau đây, không may mắn
function fix_chars($key, $value)
{
return utf8_encode($value);
}
array_walk_recursive($jobs, 'fix_chars');
xem câu trả lời của tôi. & trước khi mục $ là rất quan trọng. – ITroubs
Về cơ bản, sự khác biệt giữa 'array_map' và' array_walk' là trước đây trả về một mảng mới, trong khi thứ hai sẽ thay đổi mảng tại chỗ. Bạn muốn gì? –