php htmlchar,PHP:如何在数组上执行htmlspecialchar()?

如何在数组对象数组上运行

PHP函数htmlspecialchars()?

我有以下代码:

$result_set = Array

(

[0] => Array

(

[home_id] => 1

[address] => 4225 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 76798

)

[1] => Array

(

[home_id] => 8

[address] => 4229 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 75093

)

);

// this doesn't work since $result_set is an array of arrays and htmlspecialchars is expecting a string

htmlspecialchars($result_set, ENT_QUOTES, 'UTF-8'));

更新:

请注意,即使下面有很多答案,它们都不适用于数组数组.以下答案只适用于简单的数组.

我尝试了以下操作,但它不起作用:

array_walk_recursive($result_set, "htmlspecialchars", array(ENT_QUOTES,'UTF-8'))

我得到以下错误:htmlspecialchars()期望参数2为长,字符串给定

更新2

当我尝试:

function cleanOutput(&$value) {

return htmlspecialchars($value, ENT_QUOTES, 'UTF-8');

}

print_r($result_set);

print('-------');

print_r(array_walk_recursive($result_set, "cleanOutput"));

我得到以下,不需要的输出:

Array

(

[0] => Array

(

[home_id] => 1

[address] => 4225 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 76798

)

[1] => Array

(

[home_id] => 8

[address] => 4229 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 75093

)

)

-------1

更新3

当我尝试:

function cleanOutput(&$value) {

return htmlspecialchars($value, ENT_QUOTES, 'UTF-8');

}

$result_set = Array

(

[0] => Array

(

[home_id] => 1

[address] => 4225 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 76798

)

[1] => Array

(

[home_id] => 8

[address] => 4229 Nasmyth Dr

[city] => Plano

[state] => TX

[zip] => 75093

)

);

$cleanedOutput = array();

foreach ($result_set as $rs) {

$cleaned[] = array_map("cleanOutput", $rs);

}

print_r($cleanedOutput);

我得到以下,不需要的结果:

{'homes' : []}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值