php CI如何实现全站静态生成html,动态创建目录
CodeIgniter框架生成HTML的方法
public function out_html($code) { $data['articles'] = $datalist; $this->load->helper('file'); $this->load->view('article',$data); $html_data = $this->output->get_output(); //根据规则生成目录 $path = '/usr/share/nginx/htdocs/static/www.test.com/'. substr($code,0,2).'/'.substr($code,2,3); //目录不存在时创建 if (!is_dir($path)){ mkdir($path,0755,true); } $file_path = $path.'/'.$code.'.html'; if(write_file($file_path,$html_data)){ echo "success"; }else{ echo "error"; } }
============
mkdir($path,0755,true);
第一个参数:必须,代表要创建的多级目录的路径;
第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权;
第三个参数:true表示允许创建多级目录。
is_dir 判断目录是否存在,但中文目录判断不了
要创建中文目录可以使用iconv("UTF-8", "GBK", $path)防止中文目录乱码