11
votes

PHP: formatage du suffixe numérique de jour en PHP avec date ()

Je me sens un peu idiot pour celui-ci, mais y a-t-il un moyen plus élégant de formater le suffixe de numéro de jour em> (ST, TH) autre que d'appeler la date () 3 fois?

Qu'est-ce que j'essaie de produire en HTML: P>

//I am omitting the <p> tags:
echo date('M j',$timestamp)  
. '<sup>' . date('S', $timestamp) . '</sup>'  
. date(' Y', $timestamp);


0 commentaires

3 Réponses :


14
votes

Cela a fonctionné pour moi: xxx


2 commentaires

+1. J'avais écrit 80% quand j'ai vu quelqu'un de répondre à la question.


Vous pouvez ajouter n'importe quel texte que vous aimez dans la fonction Date PHP () dans le cadre de la chaîne, assurez-vous simplement d'échapper aux caractères réservés avec un \, comme indiqué dans la réponse de Trevor.



2
votes

Je crois que la fonction date code> vous permet de mettre dans n'importe quelle chaîne souhaitée, à condition que vous échappez à tous les caractères de format.

echo date('M j<\s\up>S<\/\s\up> Y', $timestamp);


1 commentaires

Vous avez eu le "s" pour le suffixe ordinal anglais échappé, ce qui ne va pas. J'ai corrigé cela pour vous.



22
votes

Il vous suffit d'échapper aux caractères interprétés par la fonction Date.

echo date('M j<\sup>S</\sup> Y'); // < PHP 5.2.2
echo date('M j<\s\up>S</\s\up> Y'); // >= PHP 5.2.2


0 commentaires