← All changes
|
vendor/markbaker/matrix/classes/src/functions/trace.php
+8
-4
3.1.3
→
3.4.5
View file →
| @@ -6,21 +6,25 @@ | ||
| 6 | 6 | * |
| 7 | 7 | * @copyright Copyright (c) 2018 Mark Baker (https://github.com/MarkBaker/PHPMatrix) |
| 8 | 8 | * @license https://opensource.org/licenses/MIT MIT |
| 9 | 9 | */ |
| 10 | + | |
| 10 | 11 | namespace Matrix; |
| 11 | 12 | |
| 12 | 13 | /** |
| 13 | 14 | * Returns the trace of a matrix or an array. |
| 14 | 15 | * |
| 15 | - * @param Matrix|array $matrix Matrix or an array to treat as a matrix. | |
| 16 | - * @return float The trace of the matrix | |
| 17 | - * @throws Exception If argument isn't a valid matrix or array. | |
| 16 | + * @param Matrix|array $matrix Matrix or an array to treat as a matrix. | |
| 17 | + * @return float The trace of the matrix | |
| 18 | + * @throws Exception If argument isn't a valid matrix or array. | |
| 18 | 19 | */ |
| 19 | 20 | function trace($matrix) |
| 20 | 21 | { |
| 21 | - if (!is_object($matrix) || !($matrix instanceof Matrix)) { | |
| 22 | + if (is_array($matrix)) { | |
| 22 | 23 | $matrix = new Matrix($matrix); |
| 24 | + } | |
| 25 | + if (!$matrix instanceof Matrix) { | |
| 26 | + throw new Exception('Must be Matrix or array'); | |
| 23 | 27 | } |
| 24 | 28 | |
| 25 | 29 | return Functions::trace($matrix); |
| 26 | 30 | } |