PHP Doku:: Generate a globally unique identifier (GUID) - function.com-create-guid.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzWindowsbasierte ErweiterungenCOM and .Net (Windows)COM Funktionencom_create_guid

Ein Service von Reinhard Neidl - Webprogrammierung.

COM Funktionen

<<com_addref

com_event_sink>>

com_create_guid

(PHP 5)

com_create_guidGenerate a globally unique identifier (GUID)

Beschreibung

string com_create_guid ( void )

Generates a Globally Unique Identifier (GUID).

A GUID is generated in the same way as DCE UUID's, except that the Microsoft convention is to enclose a GUID in curly braces.

Rückgabewerte

Returns the GUID as a string.

Siehe auch

  • uuid_create() in the PECL uuid extension


2 BenutzerBeiträge:
- Beiträge aktualisieren...
Alix Axel
17.08.2010 0:59
The phunction PHP framework (http://sourceforge.net/projects/phunction/) uses the following function to generate valid version 4 UUIDs:

<?php

function GUID()
{
    if (
function_exists('com_create_guid') === true)
    {
        return
trim(com_create_guid(), '{}');
    }

    return
sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(16384, 20479), mt_rand(32768, 49151), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535));
}

?>

The output generated by the sprintf() and mt_rand() calls is identical to com_create_guid() results.
Kristof_Polleunis at yahoo dot com
28.04.2005 17:16
A guid function that works in all php versions:

<?php
function guid(){
    if (
function_exists('com_create_guid')){
        return
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);// "-"
       
$uuid = chr(123)// "{"
               
.substr($charid, 0, 8).$hyphen
               
.substr($charid, 8, 4).$hyphen
               
.substr($charid,12, 4).$hyphen
               
.substr($charid,16, 4).$hyphen
               
.substr($charid,20,12)
                .
chr(125);// "}"
       
return $uuid;
    }
}
echo
guid();
?>



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)