हमारे फ़ोल्डर्स और सबफ़ोल्डर्स के अंदर छवियों की कुल संख्या कैसे गिनें?

मैंने इसे अपने विचार में रखा है। खैर, एमवीसी तरीके के रूप में, यह देखने में बेकार लग सकता है। मुझे पता है कि इसे मॉडल में कैसे रखा जाए, लेकिन यह नहीं पता कि इसे नियंत्रकों और विचारों के साथ कैसे कॉल किया जाए

<?php
$img = count(glob("./assets/images/*.*"));
$about = count(glob("./assets/images/aboutus/*.*"));
$blog1 = count(glob("./assets/images/blog/*.*"));
$mason = count(glob("./assets/images/blog/masonary/*.*"));
$tl = count(glob("./assets/images/blog/timeline/*.*"));
$blog2 = count(glob("./assets/images/blogdetails/*.*"));
$gallery = count(glob("./assets/images/gallery/*.*"));
$home = count(glob("./assets/images/home/*.*"));
$home2 = count(glob("./assets/images/home/slider/*.*"));
$ico = count(glob("./assets/images/ico/*.*"));
$lb = count(glob("./assets/images/lightbox/*.*"));
$keg = count(glob("./assets/images/kegiatan/*.*"));
$port1 = count(glob("./assets/images/portfolio/*.*"));
$port2 = count(glob("./assets/images/portfolio-details/*.*"));
$leader = count(glob("./assets/images/leaders/*.*"));
$srv = count(glob("./assets/images/services/*.*"));
$usr = count(glob("./assets/images/users/*.*"));
$count = $img+$about+$blog1+$mason+$tl+$blog2+$gallery+$home+$home2+$ico+$lb+$keg+$port1+$port2+$leader+$srv+$usr;
?>

आउटपुट:

<div class="col-sm-3 text-center wow bounceIn" data-wow-duration="1000ms" data-wow-delay="300ms">
  <h1 class="timer bold" data-to="<?= $count;?>" data-speed="3000" data-from="0"></h1> 
    <h3>Total Images</h3>
 </div>

क्या इसे सरल बनाने का कोई तरीका है?

0
Hermes Djohar 5 फरवरी 2017, 16:40
वह PHP कोड जो आपको मॉडल में होना चाहिए और नियंत्रक के माध्यम से देखने के लिए कहा जाना चाहिए। सही?
 – 
Wolverine
5 फरवरी 2017, 17:11

2 जवाब

कृपया एक नज़र डालें https://stackoverflow.com/a/10895775/7089527

आप इसे [RecursiveDirectoryIterator] [1] का उपयोग करके ऐसा कर सकते हैं

<?php
function scan_dir($path){
  $ite=new RecursiveDirectoryIterator($path);

  $bytestotal=0;
  $nbfiles=0;
  foreach (new RecursiveIteratorIterator($ite) as $filename=>$cur) {
      $filesize=$cur->getSize();
      $bytestotal+=$filesize;
      $nbfiles++;
      $files[] = $filename;
  }

  $bytestotal=number_format($bytestotal);

  return array('total_files'=>$nbfiles,
'total_size'=>$bytestotal,'files'=>$files);
   }

$files = scan_dir('./');

echo "Total: {$files['total_files']} files, {$files['total_size']} >bytes\n";
//Total: 1195 files, 357,374,878 bytes 
?>

[1]: http://php.net/manual/en/class.recursivedirectoryiterator। php

आशा है कि इससे सहायता मिलेगी

1
Community 23 मई 2017, 14:45

नियंत्रक से मॉडल में किसी विधि को कॉल करने के लिए स्वरूपित करें।

मॉडल फ़ाइल:

application/models/Photo_shoot_model.php


class Photo_shoot_model extends CI_Model {

public function image_count() {

$img = count(glob("./assets/images/*.*"));
$about = count(glob("./assets/images/aboutus/*.*"));
$blog1 = count(glob("./assets/images/blog/*.*"));
$mason = count(glob("./assets/images/blog/masonary/*.*"));
$tl = count(glob("./assets/images/blog/timeline/*.*"));
$blog2 = count(glob("./assets/images/blogdetails/*.*"));
$gallery = count(glob("./assets/images/gallery/*.*"));
$home = count(glob("./assets/images/home/*.*"));
$home2 = count(glob("./assets/images/home/slider/*.*"));
$ico = count(glob("./assets/images/ico/*.*"));
$lb = count(glob("./assets/images/lightbox/*.*"));
$keg = count(glob("./assets/images/kegiatan/*.*"));
$port1 = count(glob("./assets/images/portfolio/*.*"));
$port2 = count(glob("./assets/images/portfolio-details/*.*"));
$leader = count(glob("./assets/images/leaders/*.*"));
$srv = count(glob("./assets/images/services/*.*"));
$usr = count(glob("./assets/images/users/*.*"));
$count = $img+$about+$blog1+$mason+$tl+$blog2+$gallery+$home+$home2+$ico+$lb+$keg+$port1+$port2+$leader+$srv+$usr;

return $count;

}

}

नियंत्रक में:

public function index() {

// load model
$this->load->model('photo_shoot_model');

// call method
$howManyImages = $this->photo_shoot_model->image_count()

}

सभी मॉडलों के बारे में: https://codeigniter.com/user_guide/general/models.html

लेकिन वास्तव में, मैं @MayurVirkar द्वारा उल्लिखित RecursiveDirectoryIterator का उपयोग करूंगा।

0
ourmandave 5 फरवरी 2017, 18:38