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)防止中文目錄亂碼