10
votes

PHP Count, ajoutez des colons tous les 2 caractères

J'ai cette chaîne xxx

Je dois compter les 6 derniers caractères à partir de la fin de cette chaîne (car cela pourrait peut-être être à long terme du début) < p> Ensuite, j'ai besoin d'ajouter des points après tous les 2 caractères.

Donc, après compter 6 caractères de la fin, il sera xxx

après avoir ajouté le Colons, il ressemblera à: xxx

pouvez-vous m'aider à atteindre?

Je ne sais pas vraiment où commencer!

Merci


0 commentaires

4 Réponses :


18
votes

Vous pouvez le faire avec substr , str_split et Implode

Le code est effectué sur plusieurs Des lignes de clarté, mais peuvent facilement être faites dans une chaîne sur une ligne: xxx


0 commentaires

14
votes
sscanf($string, '%u-%3s-%u-%u-%u', $id, $type, $num, $foo, $timestamp);
$timestamp = strtotime($timestamp);
echo date('Y-m-d H:i:s', $timestamp);

1 commentaires

Ou quelque chose comme '/ ^ (. +) (\ D {2}) (\ d {2}) (\ d {2}) $ /', '$ 3: $ 4' si Il veut seulement le temps.



1
votes

Si vous voulez juste le temps:

$time = rtrim(chunk_split(substr($s,-6),2,':'),':');


0 commentaires

1
votes
$final = "1010081-COP-8-27-20110616214459";

$c = substr($final, -2);
$b = substr($final, -4, 2);
$a = substr($final, -6, 2);

echo "$a:$b:$c"; 

0 commentaires