String in Variable umwandeln / einlesen

Hallo an die PHP-Profis,

ich hab folgendes Problem. Icinga liefert mir Rohdaten in folgender Form :

/=22737MB;53334;64000;0;71112/

Dabei ist die erste Zahl der genutzt Festplattenspeicher und die 64000 wäre die Gesamtkapazität.
Aktuell zerlege ich das mit

 $Disk_genutzt = round((substr($Rohdaten,2,4))/1024,2);
 $Disk_gesamt = round((substr($Rohdaten,23,5))/1024,2);

Nun hab ich aber das Problem, dass die genutzte Kapazität auch mal 4-stellig sein kann und damit die Gesamtkapazität nicht bei 23 anfängt sondern bei 22. Irgend jemand eine Idee, wie ich das lösen kann. kann man evtl. nach dem Semikolon suchen und ab dort starten ? Ich bin leider php-Anfänger.

Besten Dank im Voraus

Thomas

Moin Thomas!

Magischer Befehl = explode :slight_smile:

<?
$string = "/=22737MB;53334;64000;0;71112/";
$string = substr($string, 2, -1); // ersten beiden und letztes zeichen abschneiden
$array = explode(";", $string);

print_r($array);
?>

Da ist die Zeichenlänge der einzelnen Werte egal, nur davor und danach der Mist muss gleich lang sein :slight_smile:

Grüße,
Chris

Hallo Chris,

irgendwie hab ich geahnt dass du das auflöst :-)…

Besten Dank. Sieht dann übrigens so aus, wenn es fertig ist ( Safari )

Thomas

Sieht gut aus :slight_smile:

IPSView oder HTML-Seite?

Grüße,
Chris

HTML.

Basiert auf einem Script von Spoosie

https://www.symcon.de/forum/threads/27752-Kathrein-UFS-9xx-auslesen/page3?highlight=kathrein

Hab ich nur angepasst . Der Balken ist HTML5 :

<progress max=100 value=".$progress."></progress> 

Was den kleinen Nachteil hat, dass es in verschiedenen Browsern unterschiedlich ausschaut, aber das ist nur ein
Schönheitsfehler.

Thomas