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


    2018年8月27日19:58:12

    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);
     }
    无法替换,目前还不知道是这个是什么原因造成的
  • 相关阅读:
    Spark集群搭建步骤
    Hadoop集群搭建步骤
    Linux上传与下载(sz-rz)
    Spark文档
    Hadoop基本命令详解
    lzo压缩格式文件查看
    hadoop端口配置指南
    eclipse无法连接到makertplace
    Socket 服务端使用多线程实现多客户端通讯实例
    Jenkins和Sonar集成
  • 原文地址:https://www.cnblogs.com/zx-admin/p/9544410.html
Copyright © 2020-2023  润新知