com_create_guid()函数在服务器端出错,但在本地使用php工作正常

Max*_*x25 22 php

努力在php文件中生成一个guid.我在使用com_create_guid().它在localhost上工作正常,但我在远程服务器中显示以下错误.

致命错误:在第6行调用未定义的函数com_create_guid()

我的代码是(guid part nly)

$guid = com_create_guid();
 echo $guid;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗

Rak*_*rma 38

您可以手动创建GUID:

function getGUID(){
    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;
    }
}
Run Code Online (Sandbox Code Playgroud)

用法:

$GUID = getGUID();
echo $GUID;
Run Code Online (Sandbox Code Playgroud)

跟随:

http://guid.us/GUID/PHP

http://php.net/manual/en/function.com-create-guid.php


小智 8

要扩展以上部分正确的答案:

取自http://php.net/manual/en/com.installation.php

"从PHP 5.4.5开始,COM和DOTNET不再内置到php核心中.你必须在php.ini中添加COM支持"

延长= php_com_dotnet.dll