2013-08-14 4 views
0

저는 현재 새로운 방문자가 페이지를 방문 할 때마다 계산되는 방문 횟수 카운터에서 작업하고 있습니다. 따라서 새로운 방문자마다 새로운 .txt 파일을 만듭니다.PHP match_preg_all 오류 (발견 된 sulution)

파일은 "hits /".$_ SERVER [ 'REMOTE_ADDR'].". txt "로 저장됩니다.

<?php 
$visits = 0; 
$hits = 0; 

$fileResource = @fopen("hits/".$remote_addr.".txt","w+"); 
fwrite($fileResource, 
"IP Adress:".$remote_addr." 
Timestamp:".time()."" 
); 

$fileResource = @fopen("hits/".$remote_addr.".txt","r"); 
$fileContent = @fread($fileResource,100000); 

preg_match_all("/(.*):(.*)\n/i",$fileContent,$fileMatches); 

foreach(glob("hits/*.txt") as $hit){ 
$hits++; 
} 
?> 

그래서 내가 뭘하려고 오전입니다 :

  1. 잡아 (완료) 파일의 내용이 표시 할 수 있습니다 그것은 있도록
  2. 형식 여기

    내 코드입니다 ":"과 \ n 사이에있는 것을 가져 와서 관리자 패널
  3. 관리자 패널에 표시하십시오.

EDIT : 나는 preg_match_all()로 놀고 있었고, sulution을 발견했습니다. \ n을 제거하는 것만 큼 쉽습니다. \

+0

그 코드가 무엇을해야하는지 설명 할 수 있습니까? 나는 당신이 파일을 열고 그것을 볼 수 있습니다. 그런 다음 파일을 다시 읽기 모드로 열고 그 파일과 일치하는 항목을 찾으십시오. 그런 다음 디렉토리에있는 모든 txt 파일을 반복하여 각 파일의 히트 수를 늘립니다. 그런 다음 스크립트가 종료됩니다. 그건 내 말이 맞지 않아. 어떻게 히트를 계산할 것입니까? – Gordon

답변

0

일치 표현에서 \ n을 \ n으로 바꾸어보세요. \ n은 리터럴 문자 n입니다. \ n은 리터럴 \ 다음에 n이옵니다.

+0

\ n을 \ n으로 바꾸면 무슨 뜻인지 알 수 없습니까? "\"는 이스케이프 문자이므로 \ n은 (는) 새로운 줄로 변환됩니다. – robin00212

+0

나는 의미 한 것을 편집하기 위해 편집했습니다. StackOverflow는 첫 번째 문자를 이스케이프 문자로 사용했기 때문에 1을 보았습니다. – McSenstrum

+0

오, 더 많은 의미가 있습니다. – robin00212