Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 3.9.x will end* 10 May 2021 (12 months).
  • Bug fixes for security issues in 3.9.x will end* 8 May 2023 (36 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.
   1  <?php
   2  
   3  declare(strict_types=1);
   4  
   5  namespace Phpml\Helper;
   6  
   7  trait Predictable
   8  {
   9      /**
  10       * @return mixed
  11       */
  12      public function predict(array $samples)
  13      {
  14          if (!is_array($samples[0])) {
  15              return $this->predictSample($samples);
  16          }
  17  
  18          $predicted = [];
  19          foreach ($samples as $index => $sample) {
  20              $predicted[$index] = $this->predictSample($sample);
  21          }
  22  
  23          return $predicted;
  24      }
  25  
  26      /**
  27       * @return mixed
  28       */
  29      abstract protected function predictSample(array $sample);
  30  }