Ankündigung

Einklappen
Keine Ankündigung bisher.

Dateiinhalt einer log-file sortiert darstellen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Dateiinhalt einer log-file sortiert darstellen

    Hallo liebe community,

    ich bin gerade etwas ratlos, ich versuche eine log-file formatiert auszugeben.
    Das auslesen an sich ist kein problem, aber jetzt kommt die Formatierung,

    Ich hätte gerne eine Tabelle mit 4 Spalten und 6 zeilen. Jede Spalte ist für eine Stunde des tages.

    Hier mal der Code den ich bisher habe:

    PHP-Code:
    <form method="post">
    Tag:
    <select name="day">
        <option value="01">1</option>
        <option value="02">2</option>
        <option value="03">3</option>
        <option value="04">4</option>
        <option value="05">5</option>
        <option value="06">6</option>
        <option value="07">7</option>
        <option value="08">8</option>
        <option value="09">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
    </select>
    Monat:
    <select name="month">
        <option value="01">1</option>
        <option value="02">2</option>
        <option value="03">3</option>
        <option value="04">4</option>
        <option value="05">5</option>
        <option value="06">6</option>
        <option value="07">7</option>
        <option value="08">8</option>
        <option value="09">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
    </select>
    Jahr:
    <select name="year">
        <option value="2018">2018</option>
        <option value="2019">2019</option>
    </select>
    <br>
    <input type="submit" name="absenden" value="Log Laden">
    </form>
    <?php
    if (empty($_POST)){
        
    $day date('d');
        
    $month date('m');
        
    $year date('Y');
    }
    if (!empty(
    $_POST)){
        
    $day $_POST['day'];
        
    $month $_POST['month'];
        
    $year $_POST['year'];
    }

    echo 
    "Logfile vom: ".$day.".".$month.".".$year;

    //echo nl2br($logfile);



    $result = array();
    $file explode("\n\r"file_get_contents('includes/botlog/'.$year.'_'.$month.'_'.$day.'_bot.log'));
    foreach ( 
    $file as $content ) {
        
    $result[] = array_filter(array_map("trim"explode("\n"$content)));
    }
    echo 
    "<pre>";
    print_r ($result);
    echo 
    "</pre>";
    Ausgabe:
    PHP-Code:
    Array
    (
        [
    0] =&gt; Array
            (
                [
    0] => [00:00:09Query Started
                
    [1] => [00:00:09Query ReadyFound50
                
    [2] => [00:00:09Success ChanceBuild
                
    [3] => [00:00:09BuildtypeSpecial
                
    [4] => [00:00:09Lab Level0
                
    [5] => [00:00:09Roboter Level0
                
    [6] => [00:00:09Shipyard Level

  • #2
    Aha. Und wo ist das Problem? Du hast ja nicht mal eine Tabelle angefangen. HTML-Tutorial: http://wiki.selfhtml.org/wiki/HTML/Tabellen
    [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

    Kommentar


    • #3
      Es geht ja darum das ich nicht genau weiß wie ich das array sortieren soll um es in einer tabelle ausgeben zu können.

      Kommentar


      • #4
        Zitat von Kimahri88 Beitrag anzeigen
        Es geht ja darum das ich nicht genau weiß wie ich das array sortieren soll um es in einer tabelle ausgeben zu können.
        Es gibt die Seite

        http://php.net/manual/en/array.sorting.php

        Das Problem bei dir ist, du hast nicht definiert wonach du sortieren willst. Für deine Aufgabe würde ich nach Uhrzeit Grupieren und nach Uhrzeit sortieren, dazu musst du aber aus dem String "[00:00:09] Query Ready. Found: 50" dann aber mit reinem Regulären Ausdruck die Urhzeit herausschneiden und es dann als eigenen Wert abspeichern.
        apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

        Kommentar


        • #5
          Um es zu genauer zu sagen, wie bekomme ich alle werte aus dem array ausgegeben in denen zb.: [00: enthalten sind?

          Kommentar


          • #6
            Um es genauer aufzuzeigen hier ein beispiel:

            0 Uhr----------------------------------------------| 1 Uhr ------------------------------| 2 Uhr------------------------------| 3 Uhr------------------------------|
            alle einträge die zu 0 Uhr gehören | usw
            alle einträge die zu 0 Uhr gehören | usw
            alle einträge die zu 0 Uhr gehören | usw
            alle einträge die zu 0 Uhr gehören | usw


            4 Uhr----------------------------------------------| 5 Uhr ------------------------------| 6 Uhr------------------------------| 7 Uhr------------------------------|

            und fortlaufend bis 23 uhr^^
            Fakt ist das die Logfile alle 5 minuten erweitert wird. Das komplette array beseht aus mehr als 61000 Einträgen

            Kommentar


            • #7
              Indem Du die Zeichenketten der Zeilen zerlegst und diese dann vergleichst und entsprechend ausgibst. Alles mit PHP-Grundkenntnissen machbar.

              Zerlegen mit String-Funktionen (das PHP Manual ist Dein Freund), dann sortieren nach Zeit (falls nötig) und dann halt ausgeben.

              Aber fixer geht es wie bereits in #4 gesagt mit einem Regex zum Zerlegen in die benötigten Teile, dann sortieren nach Zeit (falls nötig) und dann halt ausgeben.
              PHP-Manual ¡ mysql_* ist veraltet ¡ Debugging: Finde DEINE Fehler selbst ¡ Passwort-Hashing ¡ Prepared Statements

              Kommentar

              Lädt...
              X