PHP는 고유 ID를 생성합니다.

angryTom
풀어 주다: 2023-04-07 17:44:02
앞으로
3216명이 탐색했습니다.

머리말

PHP uniqid() 함수를 사용하면 마이크로초 단위의 현재 타임스탬프를 기반으로 반복되지 않는 고유 식별자를 생성할 수 있습니다. 동시성이 높거나 간격이 매우 짧은 경우(예: 루프 코드) 중복된 데이터가 대량으로 나타납니다. 두 번째 매개변수를 사용해도 반복되기 마련인데, 가장 좋은 해결 방법은 md5 함수를 결합해 고유 ID를 생성하는 것이다.

현재 시간의 마이크로초 수를 기준으로 접두사가 붙은 고유 ID를 얻으려면

string uniqid ([ string $prefix = "" [, bool $more_entropy = false ]] )
로그인 후 복사

함수를 사용하세요. 접두사 유용한 매개변수입니다. 예를 들어 여러 호스트에 있는 경우 동일한 마이크로초 내에 고유 ID가 생성될 수 있습니다. 접두사가 비어 있으면 반환되는 문자열의 길이는 13입니다. moreentropy가 TRUE인 경우 반환되는 문자열의 길이는 23입니다. moreentropy TRUE로 설정되면 uniqid()는 반환된 문자열 끝에 추가 엔트로피를 추가합니다(결합된 선형 합동 생성기를 사용하여). 고유 ID를 더욱 고유하게 만드세요.

PHP uniqid() 비반복 고유 식별자 생성을 위한 방법 1

이 메서드는 대량의 반복 데이터를 생성합니다. 다음 PHP 코드를 실행하면 배열 인덱스가 생성된 고유 식별자이고 해당 요소 값이 표시됩니다. 고유 식별자가 반복되는 횟수입니다.

<?php
$units = array();for($i=0;$i<1000000;$i++){
    $units[] = uniqid();}
$values  = array_count_values($units);
$duplicates = [];foreach($values as $k=>$v){    if($v>1){
        $duplicates[$k]=$v;    }}
echo &#39;<pre class="brush:php;toolbar:false">&#39;;print_r($duplicates);
echo &#39;
';?>
로그인 후 복사

PHP uniqid() 고유한 고유 식별자를 생성하는 방법 2

이 방법은 중복된 고유 식별자를 훨씬 적게 생성합니다.

<?php
$units = array();for($i=0;$i<1000000;$i++){
    $units[] = uniqid(&#39;&#39;,true);}
$values  = array_count_values($units);
$duplicates = [];foreach($values as $k=>$v){    if($v>1){
        $duplicates[$k]=$v;    }}
echo &#39;<pre class="brush:php;toolbar:false">&#39;;print_r($duplicates);
echo &#39;
';?>
로그인 후 복사

PHP uniqid()는 고유 식별자 메서드 3을 생성합니다.

이 메서드로 생성된 고유 식별자에는 중복이 없습니다.

<?php
$units = array();for($i=0;$i<1000000;$i++){
    $units[]=md5(uniqid(md5(microtime(true)),true));}
$values  = array_count_values($units);
$duplicates = [];foreach($values as $k=>$v){    if($v>1){
        $duplicates[$k]=$v;    }}
echo &#39;<pre class="brush:php;toolbar:false">&#39;;print_r($duplicates);
echo &#39;
';?>
로그인 후 복사

PHP uniqid() 비반복 고유 식별자 생성 방법 4

sessioncreateid() 함수를 사용하여 고유 식별자를 생성해본 결과, sessioncreateid()를 주기적으로 1억 번 호출하더라도 중복이 없습니다. php sessioncreateid()는 세션 ID를 생성하는 데 사용되는 PHP 7.1의 새로운 함수입니다. 하위 버전에서는 사용할 수 없습니다.

더 많은 PHP 관련 지식을 알고 싶다면 PHP 중국어 웹사이트를 방문하세요!

위 내용은 PHP는 고유 ID를 생성합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:cnblogs.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!