/**<br /> *<br /> * @param <type> $format<br /> * @param <type> $utimestamp<br /> * @return <type><br /> * @example<br /> *<br /> * echo udate('H:i:s.u'); 19:31:28.7812<br /> *<br /> * echo udate('H:i:s.uuuu'); 19:31:28.78127781277812778127<br /> *<br /> * echo udate('Y-M-D H:i:s.u'); 2010-Apr-Thu 19:40:49.484376<br /> *<br /> * echo udate('Y-m-d H:i:s.u'); 2010-04-22 20:20:32.453127<br /> *<br /> * echo date("Ymd").udate('Hisu'); 20100422201737484376<br /> *<br /> * echo date("Ymd").udate('Hisuu'); 20100422201926156251156251<br /> *<br /> * @author wulei<br /> * @date<br /> *<br /> */<br />function udate($format, $utimestamp = null)<br />{<br /> if (is_null($utimestamp))<br /> $utimestamp = microtime(true);<br /> $timestamp = floor($utimestamp);<br /> $milliseconds = round(($utimestamp - $timestamp) * 1000000);<br /> return date(preg_replace('`(?<!////)u`', $milliseconds, $format), $timestamp);<br />}