Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| — |
php:switch [2024/11/04 11:42] (aktuell) webproducer angelegt |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== SWITCH-CASE-Anweisung ====== | ||
| + | ^ Abkürzung ^ Einheit ^ Umrechnung ^ | ||
| + | | K | Kilobytes | Wert * 1024 | | ||
| + | | M | Megabytes | Wert * 1024 * 1024 | | ||
| + | | G | Gigabytes |Wert * 1024 * 1024 * 1024 | | ||
| + | |||
| + | //Hinweis:// Die Abkürzung der Einheit kann in der php.ini als Groß- und Kleinbuchstaben hinterlegt werden. | ||
| + | |||
| + | Mit der folgenden Funktion wird die post_max_size immer in Bytes zurück gegeben. | ||
| + | |||
| + | <code php> | ||
| + | /** | ||
| + | * @return int | ||
| + | */ | ||
| + | function getPostMaxBytes() : int | ||
| + | { | ||
| + | $postMaxSize = ini_get( 'post_max_size' ); | ||
| + | |||
| + | if( preg_match( '/([0-9,]+)([a-zA-Z]+)/', $postMaxSize, $matches ) ) { | ||
| + | |||
| + | switch( strtoupper( $matches[2] ) ) { | ||
| + | case 'K': | ||
| + | $factor = 1024; | ||
| + | break; | ||
| + | case 'M': | ||
| + | $factor = 1024 * 1024; | ||
| + | break; | ||
| + | case 'G': | ||
| + | $factor = 1024 * 1024 * 1024; | ||
| + | break; | ||
| + | default: | ||
| + | $factor = 1; | ||
| + | } | ||
| + | |||
| + | return $matches[1] * $factor; | ||
| + | } | ||
| + | |||
| + | return $postMaxSize; | ||
| + | } | ||
| + | </code> | ||