고유하고 중복되지 않는 식별자를 생성하기 위해 우리는 주로 현재 시간을 사용한 다음 이를 md5 값으로 변환합니다. 이는 레이블의 고유성을 거의 보장할 수 있습니다. 다음은 PHP에서 중복되지 않는 식별자를 생성하기 위한 일부 프로그램 코드입니다.
php 내장 함수 uniqid()
(권장 학습: PHP 프로그래밍 입문부터 숙련까지)w3school reference 매뉴얼에는 다음과 같은 문장이 있습니다. "시스템 시간을 기준으로 하기 때문에 이 함수로 생성된 ID는 최적이 아닙니다. 절대적으로 고유한 ID를 생성해야 하는 경우 md5() 함수를 사용하십시오."
다음 메서드는 비슷한 결과를 반환합니다. 5DDB650F-4389-F4A9-A100-501EF1348872function 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;
}
}
GUID는 공간과 시간에서 고유하므로 동시에 생산되는 숫자는 장소에 따라 다릅니다. 전 세계에서 두 대의 컴퓨터가 중복된 GUID 값을 생성하지 않습니다.
GUID가 필요한 경우 알고리즘에 의해 완전히 자동으로 생성될 수 있으며 이를 관리하기 위해 권위 있는 조직이 필요하지 않습니다.
GUID는 길이가 고정되어 있고 상대적으로 짧아서 분류, 식별, 보관에 매우 적합합니다.
아아아아위 내용은 PHP는 고유 ID를 생성합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!