Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

ich suche eine Möglichkeit per PHP herauszufinden, welches Betriebsystem auf dem Server installiert ist.

Ich möchte abhängig davon den Include_path setzen, da dieser bei Windows mit ";" seperiert ist und bei UNIX mit ":".

Geschrieben

hmm, nen befehl kenne ich nicht, aber VIELLEICHT nen workaround.

schau doch ob ne phpinfo.php auf dem server existiert. wenn nicht, schreib die ausgabe der phpinfo() function in ne neu zu ertsellende datei phpinfo.php und parse dir dort irgendiwe das betriebssystem aus der System textzeile raus.

vielleicht hilfts, wie gesagt nen befehl habe ich dafür noch nicht gesehn...

Geschrieben

Hi!

Quick'n'Dirty:


ob_start();
phpinfo(INFO_MODULES);
$string = ob_get_contents();
ob_end_clean();
$pieces = explode("<h2", $string);
$settings = array();

foreach($pieces as $val) {
preg_match("/<a name=\"module_([^<>]*)\">/", $val, $sub_key);
preg_match_all("/<tr[^>]*>
<td[^>]*>(.*)<\/td>
<td[^>]*>(.*)<\/td>/Ux", $val, $sub);
preg_match_all("/<tr[^>]*>
<td[^>]*>(.*)<\/td>
<td[^>]*>(.*)<\/td>
<td[^>]*>(.*)<\/td>/Ux", $val, $sub_ext);

foreach($sub[0] as $key => $val) {
$settings[$sub_key[1]][strip_tags($sub[1][$key])] = array(strip_tags($sub[2][$key]));
}
foreach($sub_ext[0] as $key => $val) {
$settings[$sub_key[1]][strip_tags($sub_ext[1][$key])] = array(strip_tags($sub_ext[2][$key]), strip_tags($sub_ext[3][$key]));
}
}

if (strpos($settings['']['PATH '][0], ';')) {
echo 'Windows';
} else {
echo 'Unix';
}
[/PHP]

Gruß Tobias

Geschrieben

wie gesagt, ist nur um den seperator für den include dir zu setzen.

habe mich hier bedient:


Example 2. A few OS related constant examples

<?php
// *nix
echo DIRECTORY_SEPARATOR; // /
echo PHP_SHLIB_SUFFIX; // so
echo PATH_SEPARATOR; // :

// Win*
echo DIRECTORY_SEPARATOR; // \
echo PHP_SHLIB_SUFFIX; // dll
echo PATH_SEPARATOR; // ;
?>
[/PHP]

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...