Utiliser une fonction PHP à l'intérieur d'une clas
                    
        
     
             
                    chabinot
    
        
    
                    Messages postés
            
                
     
             
            391
        
            
                                    Statut
            Membre
                    
                -
                                     
chabinot Messages postés 391 Statut Membre -
        chabinot Messages postés 391 Statut Membre -
        Bonjour, 
J'ai créé une classe PHP dans laquelle j'ai une fonction qui fait appel à une fonction PHP (array_multisort).
Quand je lance l'application, il semble avoir un problème au moment d'appel de cette fonction.
Je mets le source de la classe :
Le nombre de post de $array1 et de $array2 est exactement le même.
Merci de votre aide
Cordialement
                
            
                
    
    
    
        J'ai créé une classe PHP dans laquelle j'ai une fonction qui fait appel à une fonction PHP (array_multisort).
Quand je lance l'application, il semble avoir un problème au moment d'appel de cette fonction.
Je mets le source de la classe :
<?php 
class Month extends Date
{
   public $year;
   public $month;
   public $holidays  = [];
   public $feries    = [];
   public $catho     = [];
   public function __construct(?int $year = null)
   {
      if ($year === null) {
         $year = intval(date('Y'));
      }
      $this->year = $year;
   }
public function getHolidays() : array
   {
      $array = [
         "Jour de l'an",
         "Lundi de pâques",
         "Lundi de pentecôte",
         "Ascension",
         "Fête du travail",
         "Victoire des alliés",
         "Fête nationale",
         "Assomption",
         "Toussaint",
         "Armistice 1918",
         "Noël",
      ];
      return $array;
   }
public function getFeries() : array
   {
      $this->feries[] = $this->year . '0101';                          // Jour de l'an
      $this->feries[] = $this->lundiPaques($this->year);               // Lundi de pâques
      $this->feries[] = $this->lundiPentecote($this->year);            // Lundi de pentecôte
      $this->feries[] = $this->ascension($this->year);                 // Ascension
      $this->feries[] = $this->year . '0501';                          // Fête du travail
      $this->feries[] = $this->year . '0508';                          // Victoire des alliés
      $this->feries[] = $this->year . '0714';                          // Fête nationale
      $this->feries[] = $this->year . '0815';                          // Assomption
      $this->feries[] = $this->year . '1101';                          // Toussaint
      $this->feries[] = $this->year . '1111';                          // Armistice 1918
      $this->feries[] = $this->year . '1225';                          // Noël
      return $this->feries;
   }
public function displayFeries()
   {
      $array1 = $this->getHolidays();
      $array2 = $this->getFeries();
      array_multisort($array2, $array1);
      $count = count($array1);
      // Formattage de l'affichage
      for ($i = 0; $i < $count; $i ++) { 
         $result = '<div class="feries__libday">';
         $result .= '<div class="feries__libday-day">';
         $result .= $array1[$i];
         $result .= '</div><!-- /.feries__libday-day -->';
         $result .= '<div class="feries__libday-jour">';
         $result .= $this->rtvWeekDay($array2[$i]);
         $result .= '</div><!-- /.feries__libday-jour -->';
         $result .= '<div class="feries__libday-numday">';
         $result .= $this->rtvDay($array2[$i]);
         $result .= '</div><!-- /.feries__libday-numday -->';
         $result .= '<div class="feries__libday-month">';
         $result .= $this->rtvMonth($array2[$i]);
         $result .= '</div><!-- /.feries__libday-month -->';
         $result .= '</div><!-- /.feries__libday -->';
         echo $result;
      }
   }
Le nombre de post de $array1 et de $array2 est exactement le même.
Merci de votre aide
Cordialement
        A voir également:         
- Utiliser une fonction PHP à l'intérieur d'une clas
- Fonction si et - Guide
- Comment utiliser chromecast sur tv - Guide
- Utiliser une tablette comme ecran pc - Guide
- Utiliser iphone comme webcam - Guide
- Excel remplir automatiquement une cellule en fonction d'une autre ✓ - Forum Excel
1 réponse
                        
                    Le sujet est résolu, voilà la solution
Cordialement
    
                
<?php 
class Month extends Date
{
   public $year;
   public $month;
   public $holidays  = [];
   public $feries    = [];
   public $cathol    = [];
   public $catho     = [];
   public function __construct(?int $year = null)
   {
      if ($year === null) {
         $year = intval(date('Y'));
      }
      $this->year = $year;
   }
public function getHolidays() : array
   {
      $holidays = [
         "Jour de l'an",
         "Lundi de pâques",
         "Lundi de pentecôte",
         "Ascension",
         "Fête du travail",
         "Victoire des alliés",
         "Fête nationale",
         "Assomption",
         "Toussaint",
         "Armistice 1918",
         "Noël",
      ];
      $this->holidays = $holidays;
      return $this->holidays;
   }
public function getFeries() : array
   {
      $feries[] = $this->year . '0101';                          // Jour de l'an
      $feries[] = $this->lundiPaques($this->year);               // Lundi de pâques
      $feries[] = $this->lundiPentecote($this->year);            // Lundi de pentecôte
      $feries[] = $this->ascension($this->year);                 // Ascension
      $feries[] = $this->year . '0501';                          // Fête du travail
      $feries[] = $this->year . '0508';                          // Victoire des alliés
      $feries[] = $this->year . '0714';                          // Fête nationale
      $feries[] = $this->year . '0815';                          // Assomption
      $feries[] = $this->year . '1101';                          // Toussaint
      $feries[] = $this->year . '1111';                          // Armistice 1918
      $feries[] = $this->year . '1225';                          // Noël
      $this->feries = $feries;
      return $this->feries;
   }
public function dspFeries()
   {
      $array1 = $this->getHolidays();
      $array2 = $this->getFeries();
      $count  = count($array1);
      array_multisort($array2, $array1);
      // Formattage de l'affichage
      for ($i = 0; $i < $count; $i ++) { 
         $result = '<div class="feries__libday">';
         $result .= '<div class="feries__libday-day">';
         $result .= $array1[$i];
         $result .= '</div><!-- /.feries__libday-day -->';
         $result .= '<div class="feries__libday-jour">';
         $result .= $this->rtvWeekDay($array2[$i]);
         $result .= '</div><!-- /.feries__libday-jour -->';
         $result .= '<div class="feries__libday-numday">';
         $result .= $this->rtvDay($array2[$i]);
         $result .= '</div><!-- /.feries__libday-numday -->';
         $result .= '<div class="feries__libday-month">';
         $result .= $this->rtvMonth($array2[$i]);
         $result .= '</div><!-- /.feries__libday-month -->';
         $result .= '</div><!-- /.feries__libday -->';
         echo $result;
      }
   }
Cordialement
