<commit_before><?php
namespace DdvPhp\Alipay;
use \DdvPhp\DdvUtil\String\Conversion;
/**
 * AOP SDK 入口文件
 * 请不要修改这个文件，除非你知道怎样修改以及怎样恢复
 * @author wuxiao
 */

class AopSdk
{
    public static $AOP_SDK_WORK_DIR = '/tmp/';
    public static $AOP_SDK_DEV_MODE = false;
    public static $libRootDir = '';
    public static $aopDir = '';
    public static $requestDir = '';
    public static function init($AOP_SDK_WORK_DIR = null, $AOP_SDK_DEV_MODE = false){
        if (!empty($AOP_SDK_WORK_DIR)) {
            self::$AOP_SDK_WORK_DIR = $AOP_SDK_WORK_DIR;
        }
        if (is_bool($AOP_SDK_DEV_MODE)) {
            self::$AOP_SDK_DEV_MODE = $AOP_SDK_DEV_MODE;
        }
        self::$libRootDir = dirname(__FILE__) . DIRECTORY_SEPARATOR . '../../org';
        self::$aopDir = self::$libRootDir . DIRECTORY_SEPARATOR . 'aop';
        self::$requestDir = self::$aopDir . DIRECTORY_SEPARATOR . 'request';
        spl_autoload_register(AopSdk::class.'::autoload');
        /**
         * 定义常量开始
         * 在include("AopSdk.php")之前定义这些常量，不要直接修改本文件，以利于升级覆盖
         */
        /**
         * SDK工作目录
         * 存放日志，AOP缓存数据
         */
        defined("AOP_SDK_WORK_DIR") || define("AOP_SDK_WORK_DIR", self::$AOP_SDK_WORK_DIR);
        /**
         * 是否处于开发模式
         * 在你自己电脑上开发程序的时候千万不要设为false，以免缓存造成你的代码修改了不生效
         * 部署到生产环境正式运营后，如果性能压力大，可以把此常量设定为false，能提高运行速度（对应的代价就是你下次升级程序时要清一下缓存）
         */
        defined("AOP_SDK_DEV_MODE") || define("AOP_SDK_DEV_MODE", $AOP_SDK_DEV_MODE);
        /**
         * 定义常量结束
         */

    }
    public static function autoload($name){
        var_dump($name);die;
        /* 
        global $apiHome;  
        try {  
                include $apiHome.'top/request/'.$name.'.php';  
        }catch (Exception $e){  
                echo $e->getMessage();  
                exit;  
        }  */
    }

    //转换编码
    public static function characetToUtf8($data) {
        if (! empty ( $data )) {
            $fileType = mb_detect_encoding ( $data, array (
                'UTF-8',
                'GBK',
                'GB2312',
                'LATIN1',
                'BIG5'
            ) );
            if ($fileType != 'UTF-8') {
                $data = mb_convert_encoding ( $data, 'UTF-8', $fileType );
            }
        }
        return $data;
    }

    /**
     * 使用SDK执行接口请求<commit_msg>Fixbug autoload<commit_after><?php
namespace DdvPhp\Alipay;
use \DdvPhp\DdvUtil\String\Conversion;
/**
 * AOP SDK 入口文件
 * 请不要修改这个文件，除非你知道怎样修改以及怎样恢复
 * @author wuxiao
 */

class AopSdk
{
    public static $AOP_SDK_WORK_DIR = '/tmp/';
    public static $AOP_SDK_DEV_MODE = false;
    public static $libRootDir = '';
    public static $aopDir = '';
    public static $requestDir = '';
    public static function init($AOP_SDK_WORK_DIR = null, $AOP_SDK_DEV_MODE = false){
        if (!empty($AOP_SDK_WORK_DIR)) {
            self::$AOP_SDK_WORK_DIR = $AOP_SDK_WORK_DIR;
        }
        if (is_bool($AOP_SDK_DEV_MODE)) {
            self::$AOP_SDK_DEV_MODE = $AOP_SDK_DEV_MODE;
        }
        self::$libRootDir = dirname(__FILE__) . DIRECTORY_SEPARATOR . '../../org';
        self::$aopDir = self::$libRootDir . DIRECTORY_SEPARATOR . 'aop';
        self::$requestDir = self::$aopDir . DIRECTORY_SEPARATOR . 'request';
        spl_autoload_register(AopSdk::class.'::autoload');
        /**
         * 定义常量开始
         * 在include("AopSdk.php")之前定义这些常量，不要直接修改本文件，以利于升级覆盖
         */
        /**
         * SDK工作目录
         * 存放日志，AOP缓存数据
         */
        defined("AOP_SDK_WORK_DIR") || define("AOP_SDK_WORK_DIR", self::$AOP_SDK_WORK_DIR);
        /**
         * 是否处于开发模式
         * 在你自己电脑上开发程序的时候千万不要设为false，以免缓存造成你的代码修改了不生效
         * 部署到生产环境正式运营后，如果性能压力大，可以把此常量设定为false，能提高运行速度（对应的代价就是你下次升级程序时要清一下缓存）
         */
        defined("AOP_SDK_DEV_MODE") || define("AOP_SDK_DEV_MODE", $AOP_SDK_DEV_MODE);
        /**
         * 定义常量结束
         */

    }
    public static function autoload($name){
        $filePath = self::$aopDir.DIRECTORY_SEPARATOR.$name.'.php';
        if (!is_file($filePath)){
            $filePath = self::$requestDir.DIRECTORY_SEPARATOR.$name.'.php';
        }
        if (is_file($filePath)){
            try {
                include $filePath;
            }catch (Exception $e){
                throw new Exception('autoload alipay file fail', 500, 'AUTOLOAD_ALIPAY_FILE_FAIL');
            }
        }
    }

    //转换编码
    public static function characetToUtf8($data) {
        if (! empty ( $data )) {
            $fileType = mb_detect_encoding ( $data, array (
                'UTF-8',
                'GBK',
                'GB2312',
                'LATIN1',
                'BIG5'
            ) );
            if ($fileType != 'UTF-8') {
                $data = mb_convert_encoding ( $data, 'UTF-8', $fileType );
            }
        }
        return $data;
    }

    /**
     * 使用SDK执行接口请求
{'fraction_non_alphanumeric': 0.1337030191004313, 'fraction_numerical': 0.00472376257958513, 'mean_word_length': 1.9179149191132414, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6305559', 'n_tokens_mistral': 1956, 'n_tokens_neox': 1994, 'n_words': 242}