這篇文章主要介紹了CI框架實現遞歸生成文件路徑並重新生成圖片功能,涉及CodeIgniter框架自定義圖片控制器類實現文件目錄遞歸以及調用圖片處理擴展類進行圖片生成相關操作技巧,需要的朋友可以參考下
本文實例講述了CI框架實作遞歸生成檔案路徑並重新產生圖片功能。分享給大家供大家參考,如下:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); set_time_limit(0); class Img_build extends CI_Controller{ private static $img_path = 'upload_old/'; private static $new_path = 'upload/'; function __construct() { parent::__construct(); } /** * 获取需要读取的路径的信息 * $map = array ( * '路径名' => array (文件1, 文件2, 文件3) * ) */ public function index() { $this->load->helper('directory'); //读取路径的信息 $map = directory_map(self::$img_path, FALSE, TRUE); echo "<pre class="brush:php;toolbar:false">"; print_r($map); echo ""; if(!empty($map) && is_array($map)) { $this->build_path($map); } } /** * 递归生成相应的路径 * @param array $map */ private function build_path($map = array()) { if(!file_exists(self::$new_path)) { mkdir(self::$new_path, 0777); } foreach($map as $key => $val) { $old_img_path = self::$img_path; $old_tmp_path = self::$img_path.$key.'/'; $new_img_path = self::$new_path; $new_tmp_path = self::$new_path.$key.'/'; if(is_dir($old_tmp_path)) { //echo $new_tmp_path; if(!file_exists($new_tmp_path)) { mkdir($new_tmp_path, 0777); } self::$img_path = $old_tmp_path; self::$new_path = $new_tmp_path; echo 'path:'.self::$img_path."
"; // print_r($c_map); // echo ""; if(!empty($c_map) && is_array($c_map)) { $this->build_path($c_map); } } if(is_file(self::$img_path.$val)) { echo 'file:'.self::$img_path.$val."
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!
相關推薦:
#
以上是關於CI框架實現遞歸生成文件路徑並重新生成圖片的功能介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!