Maison > Article > développement back-end > Introduction à la fonction du framework CI pour générer de manière récursive des chemins de fichiers et régénérer des images
Cet article présente principalement le framework CI pour implémenter la fonction de génération récursive de chemins de fichiers et de régénération d'images, impliquant la classe de contrôleur d'image personnalisée du framework CodeIgniter pour implémenter la récursion du répertoire de fichiers et l'appel de la classe d'extension de traitement d'image pour effectuer des compétences opérationnelles liées à la génération d'images. , qui sont requis Les amis peuvent se référer à
L'exemple de cet article décrit comment le framework CI implémente la fonction de génération récursive de chemins de fichiers et de régénération d'images. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
<?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."
Ce qui précède est l'intégralité du contenu de cet article , j'espère que cela sera utile à l'apprentissage de tout le monde. Pour obtenir de l'aide, veuillez faire attention au site Web PHP chinois pour plus de contenu connexe !
Recommandations associées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!