note 116982 added to function.com-create-guid
| From: | MarkatBrileydotcom | Date: | Mon, 30 Mar 2015 15:15:10 +0000 |
| Subject: | note 116982 added to function.com-create-guid | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-202082@lists.php.net to get a copy of this message | ||
Kristof_Polleunis at yahoo dot com has a great routine but I think it could be improved by modifying
it to be:
<?php
#
# Taken from the PHP documentation website.
#
# Kristof_Polleunis at yahoo dot com
#
# A guid function that works in all php versions:
# MEM 3/30/2015 : Modified to allow the automatic removal of the curly braces.
#
function guid( $opt = true ){ // Set to your default value true/false.
if( function_exists('com_create_guid') ){
if( $opt ){ return com_create_guid(); }
else { return rtrim( com_create_guid(), '{}' ); }
}
else {
mt_srand( (double)microtime() * 10000 ); // optional for php 4.2.0 and up.
$charid = strtoupper( md5(uniqid(rand(), true)) );
$hyphen = chr( 45 ); // "-"
$left_curly = $opt ? chr(123) : ""; // "{"
$right_curly = $opt ? chr(125) : ""; // "}"
$uuid = $left_curly
. substr( $charid, 0, 8 ) . $hyphen
. substr( $charid, 8, 4 ) . $hyphen
. substr( $charid, 12, 4 ) . $hyphen
. substr( $charid, 16, 4 ) . $hyphen
. substr( $charid, 20, 12 )
. $right_curly;
return $uuid;
}
}
?>
In this way, whoever wants to use the function can easily turn off the curly brackets. In my case,
I always want them turned off but just in case - I can turn them back on by just sending TRUE to the
function.
----
Server IP: 72.52.91.14
Probable Submitter: 66.196.239.162
----
Manual Page -- http://php.net/manual/en/function.com-create-guid.php
Edit -- https://master.php.net/note/edit/116982
Del: integrated -- https://master.php.net/note/delete/116982/integrated
Del: useless -- https://master.php.net/note/delete/116982/useless
Del: bad code -- https://master.php.net/note/delete/116982/bad+code
Del: spam -- https://master.php.net/note/delete/116982/spam
Del: non-english -- https://master.php.net/note/delete/116982/non-english
Del: in docs -- https://master.php.net/note/delete/116982/in+docs
Del: other reasons-- https://master.php.net/note/delete/116982
Reject -- https://master.php.net/note/reject/116982
Search -- https://master.php.net/manage/user-notes.php