Hi!
Momentan erstelle ich eine config-datei, die dafür zuständig ist, "noch" nicht vorhandene Kontsanten zu definieren. Ich gehe hier von der PHP Version >= 4.2 aus.
Als erstes soll das Betriebssystem ermittelt werden und als die Konstante PHP_OS, falls noch nicht vorhanden, defniert werden. Nun will ich aber ermittlen können um welches OS es sich handelt, um von da aus noch weitere Konstante, die von dem OS abhängig sind wie z.B. der Pfad separator oder das Verzeichniss separator etc., zu defnieren. Bis jetzt brauchte ich nur zwischen WIN oder UNIX/Linux basierte Systeme zu unterscheiden. In PHP 5.02 wird nun aber eine weitere Kontante, die PHP_EOL, zur verfügung gestellt, die je nach Betriebssystem das Zeilenende mit "\n", "\r\n" oder "\r" definiert wird.
Die Frage ist nun, wie lautet das Suchmuster für das Betriebssystem MAC?
Hier ein Teil von meiner cinfig-datei:
cheers
Momentan erstelle ich eine config-datei, die dafür zuständig ist, "noch" nicht vorhandene Kontsanten zu definieren. Ich gehe hier von der PHP Version >= 4.2 aus.
Als erstes soll das Betriebssystem ermittelt werden und als die Konstante PHP_OS, falls noch nicht vorhanden, defniert werden. Nun will ich aber ermittlen können um welches OS es sich handelt, um von da aus noch weitere Konstante, die von dem OS abhängig sind wie z.B. der Pfad separator oder das Verzeichniss separator etc., zu defnieren. Bis jetzt brauchte ich nur zwischen WIN oder UNIX/Linux basierte Systeme zu unterscheiden. In PHP 5.02 wird nun aber eine weitere Kontante, die PHP_EOL, zur verfügung gestellt, die je nach Betriebssystem das Zeilenende mit "\n", "\r\n" oder "\r" definiert wird.
Die Frage ist nun, wie lautet das Suchmuster für das Betriebssystem MAC?
Hier ein Teil von meiner cinfig-datei:
PHP-Code:
/* OS überpfüfen */
if (!defined('PHP_OS')) {
defined('PHP_OS', $_SERVER['SERVER_SOFTWARE']);
}
$winOsPattern = '/(win|win32|winnt)/i';
if (preg_match($winOsPattern, PHP_OS)) {
define('IS_WIN', true);
define('IS_UNIX', false);
} else {
define('IS_WIN', false);
define('IS_UNIX', true);
}
/* Separatoren festlegen */
if (!defined('PATH_SEPARATOR')) {
if (IS_WIN) {
define('PATH_SEPARATOR', ';');
} else {
define('PATH_SEPARATOR', ':');
}
}
if (!defined('DIRECTORY_SEPARATOR')) {
if (IS_WIN) {
define('DIRECTORY_SEPARATOR', "\\\\");
} else {
define('DIRECTORY_SEPARATOR', '/');
}
}
Kommentar