php 保存当前html,在PHPヶ辆,但保存的HTML标签(htmlentities in PHP but preservi

你可以得到correspondances人物名单=>通过使用实体htmlentities ,与功能get_html_translation_table ; 考虑下面的代码:

$list = get_html_translation_table(HTML_ENTITIES);

var_dump($list);

(您可能要检查的第二个参数的手动在功能-也许你会需要将其设置为默认的一个不同的值)

它可以把你的东西是这样的:

array

' ' => string ' ' (length=6)

'¡' => string '¡' (length=7)

'¢' => string '¢' (length=6)

'£' => string '£' (length=7)

'¤' => string '¤' (length=8)

....

....

....

'ÿ' => string 'ÿ' (length=6)

'"' => string '"' (length=6)

' string '<' (length=4)

'>' => string '>' (length=4)

'&' => string '&' (length=5)

现在,删除不想要的correspondances:

unset($list['"']);

unset($list['

unset($list['>']);

unset($list['&']);

您的清单,目前,已通过htmlentites使用,除非你不想编码几个字符的所有字符correspondances =>实体。

而现在,你只需要提取键和值的列表:

$search = array_keys($list);

$values = array_values($list);

最后,你可以使用str_replace函数来做更换:

$str_in = '

Camión español

';

$str_out = str_replace($search, $values, $str_in);

var_dump($str_out);

你会得到:

string '

Camión español

' (length=84)

它看起来像你想要的东西;-)

编辑:好了,除了编码的问题(该死的UTF-8,我想-我试图找到一个解决方案,并会再次编辑)

第二个编辑几分钟后:似乎你必须使用utf8_encode上$search列表,调用之前str_replace :-(

这意味着使用这样的事情:

$search = array_map('utf8_encode', $search);

调用之间array_keys和呼叫str_replace 。

而且,这个时候,你应该得到你想要的东西:

string '

Camión español

' (length=70)

这里是代码的完整部分:

$list = get_html_translation_table(HTML_ENTITIES);

unset($list['"']);

unset($list['

unset($list['>']);

unset($list['&']);

$search = array_keys($list);

$values = array_values($list);

$search = array_map('utf8_encode', $search);

$str_in = '

Camión español

';

$str_out = str_replace($search, $values, $str_in);

var_dump($str_in, $str_out);

而完整的输出:

string '

Camión español

' (length=58)

string '

Camión español

' (length=70)

这一次,它应该确定^^

它并不真正适合在一条线,就是可能不是最优化的解决方案; 但它应该做工精细,并具有允许您添加/删除任何对应关系性格的优势=>实体,你需要与否。

玩得开心 !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值