2016-12-25 30 views
-3

我有一些PHP返回一個V4 UUID,並例子是: a935941636384aa0b7560617c641cc2e
我需要一種方法,在這種格式的varible得到這個字符串:
a9359416-3638-4aa0-b756-0617c641cc2e
8chars - 4chars - 4chars - 13chars
請幫我完成這個。PHP格式已經存在的V4 UUID

+0

有一個'substr'功能,使用它。 –

+0

http://stackoverflow.com/questions/2040240/php-function-to-generate-v4-uuid – RobE

回答

0

你的問題是寫得不好,你給的例子是錯誤的。 最後一部分只能有12個字符,還有,你指定4組,實際上字符串是拆分爲5

您可以使用substr,即:

<?php 
$uuid = "a935941636384aa0b7560617c641cc2e"; 
$part1 = substr($uuid, 0, 8); 
$part2 = substr($uuid, 8, 4); 
$part3 = substr($uuid, 12, 4); 
$part4 = substr($uuid, 16, 4); 
$part5 = substr($uuid, 20, 12); 

Live Demo

0

你可以這樣做:

$str = 'a935941636384aa0b7560617c641cc2e'; 
$str1 = substr($str, 0, 8); 
$str2 = substr($str, 8 ,4); 
$str3 = substr($str, 12 ,4); 
$str4 = substr($str, 16 ,4); 
$str4 = substr($str, 20 ,12); 

$final = $str1.'-'.$str2.'-'.$str3.'-'.$str4; 
+0

你測試了你的代碼嗎? –

+0

是的,它的工作原理! –

+0

您可能需要再次進行測試。第一部分你有多少個字? –