article(s) dans votre panier VOIR

Tuto PHP/MySQL | Exercice sur strpos() et substr()

  • Vidéo 67 sur 158
  • 4h43 de formation
  • 158 leçons

Un contenu flash devrait s'afficher ici. Votre navigateur ne comporte pas de plugin flash, ou il ne s'est pas correctement initialisé.

Vous pouvez télécharger le plugin flash depuis le site d'Adobe à l'adresse suivante : http://get.adobe.com/flashplayer/.

Pour accéder à la suite de cette formation, vous devez vous abonner.
previous
summary
resume
next
play
Exercice sur strpos() et substr()
00:00 / 02:03
HD
fullscreen
Je m’abonne
à partir de 16,6 € / mois
  • Visionnage en ligne
  • Accès illimité à toutes nos formations
OU
J'achète uniquement
la formation
49,90€
  • Téléchargement + VOD à vie
  • Accès uniquement à cette formation

Sommaire de la formation

Détails de la formation

En utilisant les fonctions strpos() et substr() et en vous aidant de la documentation en ligne, écrivez quelques lignes de code pour extraire chacun des éléments de date et heure de la chaîne suivante :

$dateEtHeure = "15 Juin 2014 20:12:15";

Solution

Faites une pause dans la vidéo et écrivez le code demandé. Vous pourrez continuer une fois le code entièrement écrit pour comparer votre solution et la mienne.

La fonction strpos va être utilisée à plusieurs reprises pour connaître la position des caractères séparateurs (espace et ":").

La position du premier espace est mémorisée dans la variable premierBlanc.

La position du deuxième espace est mémorisée dans la variable deuxiemeBlanc. Remarquez l'utilisation du troisième paramètre dans la fonction strpos qui indique la position à partir de laquelle doit se faire la recherche.

Une technique similaire permet de trouver la positrion du troisième espace. Mais cette fois-ci, la recherche commence après le deuxième espace.

D'une façon tout à fait comparable, on trouve la position des premier et deuxième caractères ":".

Une fois les positions des caractères séparateurs connues, il suffit d'extraire les informations à isoler avec la fonction substr() et de les afficher avec des instructions echo. Cela ne présente aucune difficulté puisque les positions des caractères séparateurs sont connues.

<?php

  $dateEtHeure = "15 Juin 2014 20:12:15";

 

  $premierBlanc = strpos($dateEtHeure," ");

  $deuxiemeBlanc = strpos($dateEtHeure," ",$premierBlanc+1);

  $troisiemeBlanc = strpos($dateEtHeure," ",$deuxiemeBlanc+1);

  $premierDeuxPoints = strpos($dateEtHeure,":");

  $deuxiemeDeuxPoints = strpos($dateEtHeure,":",$premierDeuxPoints+1);

 

  echo "Jour = ".substr($dateEtHeure,0,$premierBlanc)."<br>";

  echo "Mois = ".substr($dateEtHeure,$premierBlanc+1, $deuxiemeBlanc-$premierBlanc)."<br>";

  echo "Année = ".substr($dateEtHeure,$deuxiemeBlanc+1, $troisiemeBlanc-$deuxiemeBlanc)."<br>";

  echo "Heure = ".substr($dateEtHeure,$troisiemeBlanc+1, $premierDeuxPoints-$troisiemeBlanc-1)."<br>";

  echo "Minutes = ".substr($dateEtHeure,$premierDeuxPoints+1, $deuxiemeDeuxPoints-$premierDeuxPoints-1)."<br>";

  echo "Secondes = ".substr($dateEtHeure,$deuxiemeDeuxPoints+1, strlen($dateEtHeure) - $deuxiemeDeuxPoints)."<br>";

?>

 

Exécutons ce code dans WAMP Server. Les six informations ont bien été isolées.