此代码是把大商创的2.7.3版本admin里面的php换成laravel的Controllers
public function test(){$dir = 'D:/WWW/dsc2.7.3/admin/';//对应文件夹路径$handler = opendir('D:/WWW/dsc2.7.3/admin/');$arr = [];while( ($filename = readdir($handler)) !== false ){//略过linux目录的名字为'.'和‘..'的文件if($filename != "." && $filename != ".."){$arr[] = $filename;//输出文件名
// echo $filename.'<br>';}}closedir($handler);$newDir = 'D:/WWW/new/';//要写到哪个文件夹,这里可以自定义
// dump($arr);die;foreach ($arr as $key =>$value){if(!str_is('*.php',$value)){//不是php后缀的跳过,可以在上面读取文件名时候判断continue;}
// if($key == 0){$name = $this->camelize($value);//下划线转驼峰$name = str_replace('.','Controller.',ucfirst($name));//转成laravel的controller模式,ucfirst首字母大写$myfile = fopen($newDir.$name, "w+");fwrite($myfile, "<?phpr");//写入首行fwrite($myfile, "namespace AppHttpControllersInmanage;r");fwrite($myfile, "use IlluminateHttpRequest;r");fwrite($myfile, "use AppHttpControllersController;r");fwrite($myfile, "class ".str_replace('.php','',$name)." extends BaseControllerr{");//写入控制器名字$file = file_get_contents($dir.$value);$pattern ='/['act']s+==s+'(.*?)'|functions+(.*?)n{/';//正则表达preg_match_all($pattern,$file,$match);foreach ($match as $key =>$v){if($key == 0){continue;}foreach ($v as $i){if(!empty($i)){if(str_is('*(*',$i)){fwrite($myfile, "rtpublic function ".$i."t{rt}r");}else{fwrite($myfile, "rtpublic function ".$i."()rt{rt}r");}}}}fwrite($myfile, "r}");fclose($myfile);echo $newDir.$name.'<br>';
// }}
// dump($arr);die;
// $this->listDir('D:/WWW/dsc2.7.3/admin/');}public function camelize($uncamelized_words,$separator='_'){$uncamelized_words = $separator. str_replace($separator, " ", strtolower($uncamelized_words));return ltrim(str_replace(" ", "", ucwords($uncamelized_words)), $separator );}
本文发布于:2024-02-04 21:49:28,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170717184259912.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |