note 116982 added to function.com-create-guid

From: 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

« previous php.notes (#202082) next »