微信小程序替换成字节跳动小程序

         最近这段时间,接触了一下字节跳动小程序,发现就是微信小程序的一个高仿。替换掉一些内容,再手动根据情况修改一下异常,基本上都没什么大问题。
        由于手动替换太耗时间了,所以就简单写了个程序自动替换,想直接能 用,也不太现实,主要还是需要自己修改下兼容和异常。
   /**
     * 获取目录下所有的文件
     * @param $dir
     * @return array
     */
    public function allfile($dir)
    {
        $files = array();
        if (is_file($dir)) {
            return $dir;
        }
        $handle = opendir($dir);
        if ($handle) {
            while (false !== ($file = readdir($handle))) {
                if ($file != '.' && $file != '..') {
                    $filename = $dir . "/" . $file;
                    if (is_file($filename)) {
                        $files[] = $filename;
                        $this->replaceFile($filename);//修改文件名
                    } else {
                        $files = array_merge($files, $this->allfile($filename));
                    }
                }
            }
            closedir($handle);
        }
        return $files;
    }

    /**
     * 修改文件后缀名以及文件内容
     * @param $file
     */
    public function replaceFile($file)
    {
        $file = str_replace(".//", "", $file);

        if (substr_count($file, '.wxml') > 0) {//ml文件
            $new_file = str_replace('.wxml', "", $file) . '.ttml';//新文件名

            rename($file, $new_file);//修改文件名

            $file_content = file_get_contents($new_file);//获取新文件内容
            $new_file_content = str_replace('wx:', 'tt:', $file_content);//替换内容
            //$new_file_content = str_replace('.wxml', '.ttml', $new_file_content);//替换内容-自定义页面有问题
            file_put_contents($new_file, $new_file_content);//生成新的文件

            echo $new_file . ' 修改成功' . "<br>";

        } elseif (substr_count($file, '.wxss') > 0) {//css文件
            $new_file = str_replace('.wxss', "", $file) . '.ttss';
            rename($file, $new_file);

            $file_content = file_get_contents($new_file);//获取新文件内容
            $new_file_content = str_replace('.wxss', '.ttss', $file_content);//替换内容
            file_put_contents($new_file, $new_file_content);//生成新的文件

            echo $file . ' 修改成功' . "<br>";

        } elseif (substr_count($file, '.js') > 0) {//js文件
            $file_content = file_get_contents($file);//获取新文件内容
            $new_file_content = str_replace('wx.', 'tt.', $file_content);//替换内容
            file_put_contents($file, $new_file_content);//生成新的文件

            echo $file . ' 修改成功' . "<br>";
        }

    }
   /**
     * 执行
     */
    public function main()
    {
        $all_file = $this->allfile('D:\phpStudy\WWW\app');
    }

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注