[Résolu] Reconnaître un Doctype en PHP

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par michel.leonard, 25 Juillet 2012.

  1. michel.leonard
    michel.leonard WRInaute occasionnel
    Inscrit:
    1 Juin 2010
    Messages:
    361
    J'aime reçus:
    0
    Salut à tous chers WRInautes

    Je partage avec vous un petit morceau de code source PHP.
    Il permet de déterminer quel est le doctype d'une page web (de manière non-formelle), si vous en avez besoin, copiez le !
    PHP:
    <span class="syntaxdefault"><? $a</span><span class="syntaxkeyword">=</span><span class="syntaxdefault">strtolower</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'La première ligne non-vide&nbsp;d'</span><span class="syntaxdefault">une&nbsp;page&nbsp;web</span><span class="syntaxkeyword">.</span><span class="syntaxstring">');<br />if (strpos($a,'</span><span class="syntaxdefault">html 4.01 transitional</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">HTML 4.01 Transitional</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">html 4.01 frameset</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">HTML 4.01 Frameset</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">html 4.01</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">HTML 4.01 Strict</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml 1.0 strict</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML 1.0 Strict</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml 1.0 transitional</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML 1.0 Transitional</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml 1.0 frameset</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML 1.0 Frameset</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml 1.1</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML 1.1 </span><span class="syntaxkeyword">-</span><span class="syntaxdefault"> DTD</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml basic 1.1</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML Basic 1.1</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">doctype html</span><span class="syntaxkeyword">></span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">HTML 5</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">math system</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">MathML 1.01</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">math public</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">MathML 2.0</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">mathml 2.0</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML </span><span class="syntaxkeyword">+</span><span class="syntaxdefault"> MathML </span><span class="syntaxkeyword">+</span><span class="syntaxdefault"> SVG</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">svg 1.1 tiny</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">SVG 1.1 Tiny</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">svg 1.1 basic</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">SVG 1.1 Basic</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">svg 1.1</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">SVG 1.1 Full</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">svg 1.0</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">SVG 1.0</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">html 2.0</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault"> HTML 2.0</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">html 3.2</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">HTML 3.2</span><span class="syntaxstring">';<br />elseif (strpos($a,'</span><span class="syntaxdefault">xhtml basic 1.0</span><span class="syntaxstring">')) $b='</span><span class="syntaxdefault">XHTML Basic 1.0</span><span class="syntaxstring">';<br />else $b='</span><span class="syntaxdefault">Doctype inconnu selon W3C </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">juillet 2012</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"Résultat : $b"</span><span class="syntaxkeyword">;</span><span class="syntaxdefault"> ?></span>
    Normalement vous n'aurez rien à redire... mais on ne sais jamais... Vous avez un avis ?

    Peace
     
  2. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    337
    Merci pour ce script qui devrait intéresser certains webmasters.
     
Chargement...
Similar Threads - [Résolu] Reconnaître Doctype Forum Date
Problème images en https (forum phpbb) [résolu] Développement d'un site Web ou d'une appli mobile 18 Novembre 2017
[Résolu] Redirection 301 FR vers EN sur Prestashop uniquement sur outils Google ? Problèmes de référencement spécifiques à vos sites 11 Septembre 2017
[résolu] Passage à HTTPS, comment tester une page ? Développement d'un site Web ou d'une appli mobile 7 Septembre 2017
[Résolu] Redirection d'une famille d'URL URL Rewriting et .htaccess 9 Mars 2017
[Résolu] Diaporama et SEO Débuter en référencement 17 Janvier 2017
[résolu]Redirection monsite.fr/index.html sur monsite.fr et seo URL Rewriting et .htaccess 16 Janvier 2017
[resolu]Publicité facebook lié au compte instagram Facebook 12 Décembre 2016
[résolu] Récupérer des valeurs issues de javascript pour les mettre en base MySQL Développement d'un site Web ou d'une appli mobile 18 Juillet 2016
[résolu] Faire une redirection sauf pour mon adresse IP URL Rewriting et .htaccess 15 Juin 2016
[Résolu] 2 descriptions pour une même url selon requête Crawl et indexation Google, sitemaps 1 Juin 2016
[résolu] Action onchange sur FORM/SELECT qui ne fonctionne qu'à la première action ?!? Développement d'un site Web ou d'une appli mobile 31 Mai 2016
[résolu] Sessions : lire le contenu alors qu'on ne sait pas comment il est nommé... Développement d'un site Web ou d'une appli mobile 25 Mai 2016
[résolu] Avoir un paramètre de session "dynamique" ? Développement d'un site Web ou d'une appli mobile 25 Mai 2016
[résolu] Hauteur de div selon état d'un bouton radio Développement d'un site Web ou d'une appli mobile 23 Mai 2016
[résolu] recupération de flux xml et erreur encodage des caractères Développement d'un site Web ou d'une appli mobile 27 Janvier 2016
[résolu] Carte Google Maps avec "zones de densité" Développement d'un site Web ou d'une appli mobile 5 Novembre 2015
Balise NoIndex ignorée par Google? [résolu] Débuter en référencement 13 Janvier 2015
[Résolu] sites référents sans lien vers mon site Demandes d'avis et de conseils sur vos sites 7 Janvier 2015
Lorsqu'on a créé un site, faut-il mettre un lien vers son site dans le footer ? [Résolu] Débuter en référencement 31 Décembre 2014
[RESOLU] recuperer valeur d'un champ en js Développement d'un site Web ou d'une appli mobile 17 Décembre 2014