php 생 성 유일한 id 의 몇 가지 해결 방법
1、md5(time() . mt_rand(1,1000000));
이런 방법 은 일정한 확률 로 중복 이 생 길 수 있다.
2.php 내장 함수 uniqid()
uniqid()함 수 는 현재 시간 을 초 단위 로 계산 하여 유일한 ID 를 생 성 합 니 다.
w3 school 참고 매 뉴 얼 에는"시스템 시간 을 기반 으로 이 함 수 를 통 해 생 성 된 ID 가 가장 좋 지 않 습 니 다."라 는 말 이 있 습 니 다.절대 유일한 ID 를 만 들 려 면 md5()함 수 를 사용 하 십시오."
다음 방법 반환 결과 유사:5DDB 650 F-4389-F4A9-A100-501 EF 1348872
function uuid() {
if (function_exists ( 'com_create_guid' )) {
return com_create_guid ();
} else {
mt_srand ( ( double ) microtime () * 10000 ); //optional for php 4.2.0 and up. ,4.2.0 。
$charid = strtoupper ( md5 ( uniqid ( rand (), true ) ) ); // ( ) id.
$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;
}
}
com_create_guid()는 phop 자체 생 성 유일한 id 방법 으로 phop 5 이후 에는 없 는 것 같 습 니 다.3.공식 유 니 키 드()참고 매 뉴 얼 은 사용자 가 제공 하 는 방법 이 있 습 니 다.결 과 는 유사 합 니 다.{E2DFFB3-571 E-6CCC-4B5C-9FEDAAF2EFD 7}
public function create_guid($namespace = '') {
static $guid = '';
$uid = uniqid("", true);
$data = $namespace;
$data .= $_SERVER['REQUEST_TIME'];
$data .= $_SERVER['HTTP_USER_AGENT'];
$data .= $_SERVER['LOCAL_ADDR'];
$data .= $_SERVER['LOCAL_PORT'];
$data .= $_SERVER['REMOTE_ADDR'];
$data .= $_SERVER['REMOTE_PORT'];
$hash = strtoupper(hash('ripemd128', $uid . $guid . md5($data)));
$guid = '{' .
substr($hash, 0, 8) .
'-' .
substr($hash, 8, 4) .
'-' .
substr($hash, 12, 4) .
'-' .
substr($hash, 16, 4) .
'-' .
substr($hash, 20, 12) .
'}';
return $guid;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel - 변환된 유효성 검사 규칙으로 API 요청 제공동적 콘텐츠를 위해 API를 통해 Laravel CMS에 연결하는 모바일 앱(또는 웹사이트) 구축을 고려하십시오. 이제 앱은 CMS에서 번역된 콘텐츠를 받을 것으로 예상되는 다국어 앱이 될 수 있습니다. 일반적으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.