백만 행이 넘는 uid 목록을 얻는 경우 형식은 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
10001000
10001001
10001002
......
10001000
...... 중복을 정리하기 위해 먼저 정의를 살펴보겠습니다. PHP 배열: PHP의 배열은 실제로 순서가 지정된 맵입니다. 맵은 값을 키에 연결하는 유형입니다. 이 유형은 여러 가지 방법으로 최적화되어 있으므로 실제 배열이나 목록(벡터), 해시 테이블(맵 구현), 사전, 세트, 스택, 큐 및 더 많은 가능성으로 처리될 수 있습니다. 배열 요소의 값은 다른 배열일 수도 있습니다. 트리 구조와 다차원 배열도 허용됩니다.
PHP 배열에서 키는 인덱스라고도 하며 이 기능을 사용하여 중복 제거를 수행할 수 있습니다. 샘플 코드는 다음과 같습니다.
코드는 다음과 같습니다.//중복 제거 후 결과를 저장할 배열 정의
$result = array()// uid 목록 파일 읽기$fp = fopen('test.txt', 'r')
while(!feof($fp))
{
$uid = fgets($fp) ;
$uid = 트림($uid);
$uid = 트림($uid, "r")
$uid = 트림($uid, "n")
$uid == '')
{
continue;
}
//값이 존재하는지 확인하는 키로 uid를 사용합니다.
if(empty($result [$uid]) )
{
$result[$uid] = 1;
}
}
fclose($fp)
//결과를 파일에 저장
$content = '';
foreach($result as $k => $v)
{
$content .= $k."n"
}
$ fp = fopen(' result.txt', 'w');
fwrite($fp, $content);
fclose($fp)
?>
한 줄의 코드로 백만 개 이상의 데이터를 중복 제거할 수 있으며 효율성도 좋고 매우 실용적입니다. 휴대폰 번호와 이메일도 이 방법으로 중복 제거될 수 있습니다.
또한 이 방법을 사용하여 두 개의 uid 목록 파일이 있는 경우 형식은 위의 uid 목록과 동일합니다.
//중복 제거 후 결과를 저장할 배열 정의$ result = array();
//첫 번째 uid 목록 파일을 읽고 $result_1에 넣습니다.$fp = fopen('test_1.txt', 'r')
while(!feof( $fp))
{
$uid = fgets($fp);
$uid = 트림($uid)
$uid = 트림($uid, "r"); >$uid = Trim($uid, "n");
if($uid == '')
{
continue;
}
//키 $로 쓰기 결과, 중복이 있으면 덮어씁니다.
$result[$uid] = 1
}
fclose($fp)
//두 번째 uid 목록 파일을 읽고 진행합니다. 중복 제거 작업
$fp = fopen('test_2.txt', 'r');
while(!feof($fp))
{
$uid = fgets($fp)
$uid = 트림($uid);
$uid = 트림($uid, "r")
$uid = 트림($uid, "n")
if($ uid == '')
{
continue;
}
//값이 존재하는지 확인하기 위해 uid를 키로 사용
if(empty($result[$uid]))
{
$result[$uid] = 1;
}
}
fclose($fp)
//$result에 저장된 결과는 중복 제거 후의 결과입니다. 파일로 출력, 코드 생략
?>
곰곰이 생각해 보면 배열의 이 기능을 사용하면 우리 작업에서 더 많은 문제를 해결할 수 있다는 것을 어렵지 않게 찾을 수 있습니다.
위 내용은 PHP 배열의 내용을 포함하여 수백만 개의 데이터에서 중복된 데이터를 제거하기 위한 PHP 배열의 구현 코드를 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.