tryer 发布的文章

# coding=utf-8
import re
import os
import sys
def rename():
    path = "E:\\Website\\test\\".decode('utf-8').encode('GB2312')
    filelist = os.listdir(path)
    for files in filelist:
        olddir=os.path.join(path,files)
        if os.path.isdir(olddir):
            continue
        filename=os.path.splitext(files)[0]    
        filetype=os.path.splitext(files)[1]
        #替换文件中的数字==还有a
        news = re.sub('\d*==','',filename)
        news = re.sub('\d*=','',news)
        nn = news.replace("a","")
        print(os.path.join(path,nn+filetype))
        newdir = os.path.join(path,nn+filetype.lower())
        #重名 判断
        if os.path.isfile(newdir):
            print(newdir+" is have")
            continue
        os.rename(olddir,newdir)
rename()

Source Map
前端工程化的一个重要部分就是就是源码转换,一方面压缩体积,另一方面合并文件。当然还有可能是为了转换Typescript、ES6+或其他代码。但通常转换完的代码难以阅读和调试。Source Map就是为了解决这个问题而出现的。

找到一个神器
安装
Chrome web store
安装地址https://chrome.google.com/webstore/detail/source-detecotor/aioimldmpakibclgckpdfpfkadbflfkn?hl=zh-CN&gl=CN

源码安装

  1. 下载安装

git clone https://github.com/SunHuawei/SourceDetector.git
cd SourceDetector
npm install
bower install
gulp

打开Chrome设置-扩展程序
点击"加载已解压的扩展程序..."
选择path/to/source-detector/dist目录

之后你在浏览任何网页时,该插件将自动检测是否有.map文件。其会自动按网站分组显示源码文件,并可点击下载全部或部分源码文件。

tp5组合复杂的AND OR SQL语句

                if (!empty($spec_name)) {
                    $spec_where_item[] = array(
                        'like',
                        '%' . $spec_name . '%'
                    );
                }

                //重置
                $spec_where1 = [];
                foreach ($spec_value_info as $spec)
                {
                    $spec_value_name = $spec["spec_value_name"];

                    if (!empty($spec_value_name)) {
                        $spec_where1[] = array(
                            'like',
                            '%"spec_value_name":"' . $spec_value_name . '"%'
                        );
                    }
                }
                //这些条件用or
                $spec_where2 = [$spec_where1,'or'];
                $spec_where[] = [$spec_where_item,$spec_where2,'and'];

侧边商品筛选器的开发
基于filterMore组件,筛选器数据的json生成,解决选择后的参数URL拼接 ,后端参数获取,选中值页面重载后的加载等难题
基于模板标签的二级子站的显示

微信编辑器提供微信公众号文章排版和内容编辑的在线工具,样式丰富,支持秒刷、收藏样式和颜色、图片素材编辑、图片水印、一键排版等功能,轻松编辑微信公众号图文。是公众号编辑必备的工具,很多平台都需要加入VIP才能使用一些更好的资源,今天刚好研究微信编辑器的原理与开发,通过看JS代码发现很多平台的VIP判断很容易绕过。以下是方法,都需要在chrome的开发者工具的cosole面板中运行.

96editor

$('#user_vip').data('vip',3) 

135editor

vip_user = true

其它平台不断丰富中

以下是简要大纲,全文马上发布

1.发现问题
2.查找原因
3.查杀木马 linux下查杀不方便 将文件打包到本地用dwebshell查杀 检查文件
4.木马破坏的过程 目的 黑帽SEO

composer thinkphp 的版本配置 5.0.x的composer升级
通过composer更新
手工更新核心漏洞文件

thinkphp版本升级后的程序修改
yfcmf升级版本后出错 清理缓存 修改用到 exp 的地方

app/common.php
 Db::name("action_log")->where($where)->update(array("count"=>array("inc","1"),"last_time"=>$time,"ip"=>$ip));

news.php
//更新点击数
            Db::name('news')->update(array("n_id"=>input('id'),"news_hits"=>array("inc","1")));

清理木马
打包到本地 用WebshellKill扫描、杀木马后重新上传
用linux下工具 PHP扫木马工具