Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.10.x will end 8 November 2021 (12 months).
  • Bug fixes for security issues in 3.10.x will end 9 May 2022 (18 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.

Differences Between: [Versions 310 and 311]

   1  <?php
   2  
   3  /**
   4   *
   5   * Function code for the matrix division operation
   6   *
   7   * @copyright  Copyright (c) 2013-2018 Mark Baker (https://github.com/MarkBaker/PHPMatrix)
   8   * @license    https://opensource.org/licenses/MIT    MIT
   9   */
  10  
  11  namespace Matrix;
  12  
  13  use Matrix\Operators\Division;
  14  
  15  /**
  16   * Divides two or more matrix numbers
  17   *
  18   * @param array<int, mixed> $matrixValues The numbers to divide
  19   * @return Matrix
  20   * @throws Exception
  21   */
  22  function divideinto(...$matrixValues)
  23  {
  24      if (count($matrixValues) < 2) {
  25          throw new Exception('Division operation requires at least 2 arguments');
  26      }
  27  
  28      $matrix = array_shift($matrixValues);
  29  
  30      if (is_array($matrix)) {
  31          $matrix = new Matrix($matrix);
  32      }
  33      if (!$matrix instanceof Matrix) {
  34          throw new Exception('Division arguments must be Matrix or array');
  35      }
  36  
  37      $result = new Division($matrix);
  38  
  39      foreach ($matrixValues as $matrix) {
  40          $result->execute($matrix);
  41      }
  42  
  43      return $result->result();
  44  }