Пример #1
0
function RegexRequest($str, $namespace, $rules, $attr, $input, $prefix)
{
    $patterns = ['/{{namespace}}/', '/{{var_rules}}/', '/{{var_attributes}}/', '/{{var_input}}/', '/{{prefix}}/'];
    $replacements = [fixNamescape($namespace, 1), $rules, $attr, $input, fixNamescape($prefix, 1)];
    // add string text
    return preg_replace($patterns, $replacements, $str);
}
function GenerateToDir($process, $lastResult, $namespace, $prefix)
{
    // Open setting.ini
    $iniFile = parse_ini_file("setting.ini", true) or die('Cannot open file setting.ini');
    // Default Name. result: NameSpace
    $nm = fixNamescape($namespace, 1);
    // prefix/group
    $pref = fixNamescape($prefix, 1);
    $group = empty($prefix) ? $nm . '/' : $pref . '/';
    // location
    $loc_migrate = $iniFile['location_l5']['migrate'];
    $loc_controller = $iniFile['location_l5']['controller'] . $group;
    $loc_repository = $iniFile['location_l5']['repository'] . $group;
    $loc_request = $iniFile['location_l5']['request'] . $group;
    $loc_model = $iniFile['location_l5']['model'] . $group;
    // result: 2015_10_26_171248_create_table_nama_tabel
    $nm_migrate = date('Y_m_d_His') . '_create_table_' . fixNamescape($namespace, 5);
    $nm_controller = $nm . 'Controller';
    $nm_repository = $nm . 'Repository';
    $nm_request = $nm . 'FormRequest';
    $nm_model = $nm;
    $resultMigrate = '';
    $resultController = '';
    $resultRepository = '';
    $resultRequest = '';
    $resultModel = '';
    // Do by type process
    switch ($process) {
        case 'mig':
            $string = CmdMigrate($lastResult, $namespace);
            $resultMigrate = CreateWriteFile($loc_migrate, $nm_migrate, $string);
            break;
        case 'con':
            $string = CmdController($namespace, $prefix);
            $resultController = CreateWriteFile($loc_controller, $nm_controller, $string);
            break;
        case 'rep':
            $string = CmdRepository($lastResult, $namespace, $prefix);
            $resultRepository = CreateWriteFile($loc_repository, $nm_repository, $string);
            break;
        case 'req':
            $string = CmdRequest($lastResult, $namespace, $prefix);
            $resultRequest = CreateWriteFile($loc_request, $nm_request, $string);
            break;
        case 'mod':
            $string = CmdModel($lastResult, $namespace, $prefix);
            $resultModel = CreateWriteFile($loc_model, $nm_model, $string);
            break;
        case 'all':
            $string = CmdMigrate($lastResult, $namespace);
            $resultMigrate = CreateWriteFile($loc_migrate, $nm_migrate, $string);
            $string = CmdController($namespace, $prefix);
            $resultController = CreateWriteFile($loc_controller, $nm_controller, $string);
            $string = CmdRepository($lastResult, $namespace, $prefix);
            $resultRepository = CreateWriteFile($loc_repository, $nm_repository, $string);
            $string = CmdRequest($lastResult, $namespace, $prefix);
            $resultRequest = CreateWriteFile($loc_request, $nm_request, $string);
            $string = CmdModel($lastResult, $namespace, $prefix);
            $resultModel = CreateWriteFile($loc_model, $nm_model, $string);
            break;
        default:
            $resultMigrate = '';
            $resultController = '';
            $resultRepository = '';
            $resultRequest = '';
            $resultModel = '';
    }
    return ['resultMigrate' => $resultMigrate, 'resultController' => $resultController, 'resultRepository' => $resultRepository, 'resultRequest' => $resultRequest, 'resultModel' => $resultModel];
}