Verzeichnisstruktur phpBB-3.2.0
- Veröffentlicht
- 06.01.2017
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
ini.php
001 <?php
002 /**
003 *
004 * This file is part of the phpBB Forum Software package.
005 *
006 * @copyright (c) phpBB Limited <https://www.phpbb.com>
007 * @license GNU General Public License, version 2 (GPL-2.0)
008 *
009 * For full copyright and license information, please see
010 * the docs/CREDITS.txt file.
011 *
012 */
013
014 namespace phpbb\php;
015
016 /**
017 * Wrapper class for ini_get function.
018 *
019 * Provides easier handling of the different interpretations of ini values.
020 */
021 class ini
022 {
023 /**
024 * Simple wrapper for ini_get()
025 * See http://php.net/manual/en/function.ini-get.php
026 *
027 * @param string $varname The configuration option name.
028 * @return bool|string False if configuration option does not exist,
029 * the configuration option value (string) otherwise.
030 */
031 public function get($varname)
032 {
033 return ini_get($varname);
034 }
035
036 /**
037 * Gets the configuration option value as a trimmed string.
038 *
039 * @param string $varname The configuration option name.
040 * @return bool|string False if configuration option does not exist,
041 * the configuration option value (string) otherwise.
042 */
043 public function get_string($varname)
044 {
045 $value = $this->get($varname);
046
047 if ($value === false)
048 {
049 return false;
050 }
051
052 return trim($value);
053 }
054
055 /**
056 * Gets configuration option value as a boolean.
057 * Interprets the string value 'off' as false.
058 *
059 * @param string $varname The configuration option name.
060 * @return bool False if configuration option does not exist.
061 * False if configuration option is disabled.
062 * True otherwise.
063 */
064 public function get_bool($varname)
065 {
066 $value = $this->get_string($varname);
067
068 if (empty($value) || strtolower($value) == 'off')
069 {
070 return false;
071 }
072
073 return true;
074 }
075
076 /**
077 * Gets configuration option value as an integer.
078 *
079 * @param string $varname The configuration option name.
080 * @return bool|int False if configuration option does not exist,
081 * false if configuration option value is not numeric,
082 * the configuration option value (integer) otherwise.
083 */
084 public function get_int($varname)
085 {
086 $value = $this->get_string($varname);
087
088 if (!is_numeric($value))
089 {
090 return false;
091 }
092
093 return (int) $value;
094 }
095
096 /**
097 * Gets configuration option value as a float.
098 *
099 * @param string $varname The configuration option name.
100 * @return bool|float False if configuration option does not exist,
101 * false if configuration option value is not numeric,
102 * the configuration option value (float) otherwise.
103 */
104 public function get_float($varname)
105 {
106 $value = $this->get_string($varname);
107
108 if (!is_numeric($value))
109 {
110 return false;
111 }
112
113 return (float) $value;
114 }
115
116 /**
117 * Gets configuration option value in bytes.
118 * Converts strings like '128M' to bytes (integer or float).
119 *
120 * @param string $varname The configuration option name.
121 * @return bool|int|float False if configuration option does not exist,
122 * false if configuration option value is not well-formed,
123 * the configuration option value otherwise.
124 */
125 public function get_bytes($varname)
126 {
127 $value = $this->get_string($varname);
128
129 if ($value === false)
130 {
131 return false;
132 }
133
134 if (is_numeric($value))
135 {
136 // Already in bytes.
137 return phpbb_to_numeric($value);
138 }
139 else if (strlen($value) < 2)
140 {
141 // Single character.
142 return false;
143 }
144 else if (strlen($value) < 3 && $value[0] === '-')
145 {
146 // Two characters but the first one is a minus.
147 return false;
148 }
149
150 $value_lower = strtolower($value);
151 $value_numeric = phpbb_to_numeric($value);
152
153 switch ($value_lower[strlen($value_lower) - 1])
154 {
155 case 'g':
156 $value_numeric *= 1024;
157 case 'm':
158 $value_numeric *= 1024;
159 case 'k':
160 $value_numeric *= 1024;
161 break;
162
163 default:
164 // It's not already in bytes (and thus numeric)
165 // and does not carry a unit.
166 return false;
167 }
168
169 return $value_numeric;
170 }
171 }
172