css页面字体替换源代码和页面显示不一样问题解决

2018年8月27日19:58:12

css指定字体的时候,可以自制的字体,比如字符替换,比如

css页面字体替换源代码和页面显示不一样问题解决

0没有被替换,其他在源代码被替换对应的字母,但是现实的时候在替换成正确的数字

很简单,防爬虫,但是....呵呵

解决办法就是把爬回来的数据,自己根据规则替换回来

吧网页里 .ttf的文件找出来,使用 FontCreatorPortable打开,就可以看见规则了,足以ttl文件和eot文件的关系,一般只需要的ttf文件即可

写方法的时候发现了,一个bug,本人的php现在是7.2

 function css_replace_decrypt($str = '') {
$ttf_array = [];
$ttf_array['0'] = '0';
$ttf_array['1'] = 'j';
$ttf_array['2'] = 'k';
$ttf_array['3'] = 'l';
$ttf_array['4'] = 'm';
$ttf_array['5'] = 'n';
$ttf_array['6'] = 'o';
$ttf_array['7'] = 'p';
$ttf_array['8'] = 'q';
$ttf_array['9'] = 'r';
if (empty($str)) {
return 0;
}
$tr = str_split($str);
// str_replace 无法使用,可能有bug
foreach ($ttf_array as $k => $v) {
foreach ($tr as $kk => &$vv) {
if ((string) $v == (string) $vv) {
$vv = $k;
}
}
}
$re = implode('', $tr);
return $re;
}
str_replace 无法这样使用
foreach ($ttf_array as $k => $v) {
str_replace($v,$k,$str);
 }
无法替换,目前还不知道是这个是什么原因造成的
上一篇:Win10系列:C#应用控件基础4


下一篇:Android+Jquery Mobile学习系列-目录