Récupérer la date et le nom d'un log
Fornikator
-
A.Nonymous -
A.Nonymous -
Bonjour,
Depuis 3 semaine je cherche comme récupéré la date dans un log, voici comment il est présenté :
Donc je veux récupéré les dates (30/Apr/2009:16:40:21 et les convertire en timestamp) ainsi que le nom du fichier (image.png).
J'ai essayer avec des explode() mais impossible.
Merci d'avance.
Voici la base du code que j'ai essayé :
Depuis 3 semaine je cherche comme récupéré la date dans un log, voici comment il est présenté :
XXX.XX.XX.XXX site.com - [30/Apr/2009:16:40:21 +0200] "GET /dossier/image.png HTTP/1.1 XX.XXX.XX.XXX site.com - [30/Apr/2009:16:50:34 +0200] "GET /dossier/image.png HTTP/1.1 XX.X.XXX.XX site.com - [30/Apr/2009:16:70:10 +0200] "GET /dossier/image.png HTTP/1.1
Donc je veux récupéré les dates (30/Apr/2009:16:40:21 et les convertire en timestamp) ainsi que le nom du fichier (image.png).
J'ai essayer avec des explode() mais impossible.
Merci d'avance.
Voici la base du code que j'ai essayé :
<?php
$fichier = file_get_contents('fichier.log');
$log = explode("", $fichier);
print_r($log);
?>
7 réponses
-
-
-
As-tu essayé un outil comme logparser qui permet d'importer des logs web dans une base de données ?
Ainsi tu feras des requêtes vers la base de données avec toutes les données par colonne.
http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07 -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
-
Vive les expressions régulières :)
$reg = '¤\[(?P<d>\d+)\/(?P<M>\w+)\/(?P<Y>\d{4}):(?P<H>\d+):(?P<i>\d+):(?P<s>\d+)¤';
if(
preg_match( $reg, $line , $matches )
)
{
var_dump( $matches );
}
Possible aussi d'utiliser, question de goût :
$reg = '¤\[(\d+)\/(\w+)\/(\d{4}):(\d+):(\d+):(\d+)¤';