PHP로 중복없는 유일한 문자열을 생성하는 제가 애용하는 함수를 공유해드립니다.
function v4 ($trim = true)
{
// Windows
if (function_exists('com_create_guid') === true) {
if ($trim === true)
return trim(com_create_guid(), '{}');
else
return com_create_guid();
}
// OSX/Linux
if (function_exists('openssl_random_pseudo_bytes') === true) {
$data = openssl_random_pseudo_bytes(16);
$data[6] = chr(ord($data[6]) & 0x0f | 0x40); // set version to 0100
$data[8] = chr(ord($data[8]) & 0x3f | 0x80); // set bits 6-7 to 10
return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
}
// Fallback (PHP 4.2+)
mt_srand((double)microtime() * 10000);
$charid = strtolower(md5(uniqid(rand(), true)));
$hyphen = chr(45); // "-"
$lbrace = $trim ? "" : chr(123); // "{"
$rbrace = $trim ? "" : chr(125); // "}"
$guidv4 = $lbrace.
substr($charid, 0, 8).$hyphen.
substr($charid, 8, 4).$hyphen.
substr($charid, 12, 4).$hyphen.
substr($charid, 16, 4).$hyphen.
substr($charid, 20, 12).
$rbrace;
return $guidv4;
}
이용해주시는 분들께 감사를 드립니다.
게시글 목록
| 번호 | 제목 |
|---|---|
| 16893 | |
| 16890 |
PHP
DB 세션 핸들링
2
|
| 16889 | |
| 16888 |
node.js
c++로 만들어진 코드를 바인딩하기
1
|
| 16887 |
node.js
express이용하여 간단하게 api 서버 만들기
1
|
| 16886 | |
| 16885 |
node.js
Mac os에서 nvm + node 설치편
|
| 16884 |
node.js
nvm설치 + nodejs 설치
|
| 16883 | |
| 16882 | |
| 16881 | |
| 16880 | |
| 16871 | |
| 16870 | |
| 16868 |
OS
opendkim 설치
|
| 16863 | |
| 16861 | |
| 16856 | |
| 16852 | |
| 16834 | |
| 16833 | |
| 16829 | |
| 16827 | |
| 16826 | |
| 16823 | |
| 16822 | |
| 16819 | |
| 16818 | |
| 16817 | |
| 16806 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기