28

PHPファイルでGUIDを生成する作業を行っています.i'mを使用していcom_create_guid()ます. localhost では正常に動作しますが、リモート サーバーで以下のエラーが表示されます。

致命的なエラー: 6 行目の未定義関数 com_create_guid() の呼び出し

私のコードは(GUID部分のみ)

$guid = com_create_guid();
 echo $guid;

何か案は

4

4 に答える 4

47

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;
    }
}

使用法:

$GUID = getGUID();
echo $GUID;

従う:

http://guid.us/GUID/PHP

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

于 2013-08-13T10:43:16.533 に答える
10

上記の部分的に正しい答えを拡張するには:

http://php.net/manual/en/com.installation.phpから取得

「PHP 5.4.5 から、COM と DOTNET は php コアに組み込まれなくなりました。php.ini で COM サポートを追加する必要があります」

拡張子=php_com_dotnet.dll

于 2013-10-30T12:42:42.003 に答える