PHP 5.6.0beta1 released

# array_product

(PHP 5 >= 5.1.0)

array_productErmittelt das Produkt von Werten in einem Array

### Beschreibung

number array_product ( array `\$array` )

array_product() gibt das Produkt von Werten in einem Array.

`array`

Das Array.

### Rückgabewerte

Gibt das Produkt als Integer oder Float zurück.

### Beispiele

Beispiel #1 array_product() Beispiel

``` <?php\$a = array(2, 4, 6, 8);echo "Produkt(a) = " . array_product(\$a) . "\n";echo "product(array()) = " . array_product(array()) . "\n";?> ```

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

```Produkt(a) = 384
product(array()) = 1
```

``` You can use array_product to calculate the factorial of n: <?php function factorial( \$n ) {   if( \$n < 1 ) \$n = 1;   return array_product( range( 1, \$n )); } ?> If you need the factorial without having array_product available, here is one: <?php function factorial( \$n ) {   if( \$n < 1 ) \$n = 1;   for( \$p++; \$n; ) \$p *= \$n--;   return \$p; } ?> ```
``` An observation about the _use_ of array_product with primes: \$a=\$arrayOfSomePrimes=(2,3,11);               // 2 being the first prime (these days) \$codeNum=array_product(\$a); // gives 66 (== 2*3*11) echo "unique product(\\$a) = " . array_product(\$a) . "\n"; The 66 can (only) be split into its original primes, which can be transformed into their place in the row of primes (2,3,5,7,11,13,17,19...)  giving (1,2,3,4,5,6,7,8...) The 66 gives the places {1,2,5} in the row of primes. The number "66" is unique as a code for {1,2,5} So you can define the combination of table-columns {1,2,5} in "66". The bigger the combination, the more efficient in memory/transmission, the less in calculation. ```
``` This function can be used to test if all values in an array of booleans are TRUE. Consider: <?php function outbool(\$test) {     return (bool) \$test; } \$check[] = outbool(TRUE); \$check[] = outbool(1); \$check[] = outbool(FALSE); \$check[] = outbool(0); \$result = (bool) array_product(\$check); // \$result is set to FALSE because only two of the four values evaluated to TRUE ?> The above is equivalent to: <?php \$check1 = outbool(TRUE); \$check2 = outbool(1); \$check3 = outbool(FALSE); \$check4 = outbool(0); \$result = (\$check1 && \$check2 && \$check3 && \$check4); ?> This use of array_product is especially useful when testing an indefinite number of booleans and is easy to construct in a loop. ```