2009-05-20 5 views
0

php : // 입력을 통해 XML을 받고 있습니다. 그리고 simpleXML을 사용하여 요소를 변수로 분해 한 다음 배열을 추가하거나 30 초마다 변수 배열을 만듭니다.MySQL을 삽입하기 전에 배열을 업데이트 하시겠습니까?

이유는이 스크립트가 정기적 인 입력을 얻고 있기 때문에로드가 많은 MySQL 업데이트 또는 삽입보다 효율성이 더 좋을 것이라고 가정합니다.

잠시 시간을내어 본다면 몇 가지 질문이 있습니다.

1) 거기에 php : // 입력에 대한 새로운 입력을 확인하는 방법이 있습니다. 2) 수면 기능보다이 반복 검사를하는 더 좋은 방법이 있습니까? 3) 이러한 업데이트 변수가있는 배열에 어떻게 추가/추가합니까?

나는 지금까지 아직 너무 사라하지 않은, 그래서 코드는 유용하지 않습니다하지만 당신은 나에게 간결함을 용서할 수있는 경우 : - 내가 제대로 이해하면

function input() { 

    $xml = new SimpleXMLElement($input); 

    $session_id = $xml->session_id; 
    $ip = $xml->ip; 
    $browser = $xml->browser; 

    store($session_id, $ip, $browser); 
    } 

function store() { 
    $session_id = array(); 
    $ip = array(); 
    $browser = array(); 
} 

답변

0

, 당신이 사용하려고하는 것 같다 장기 실행 스테이트 풀 프로그램을위한 PHP. 다음 내용을 잘 알고 있습니다. PHP 프로그램은 일반적으로 몇 밀리 초 이상, 보통 웹 응용 프로그램의 경우 최대 몇 초 동안 실행되지 않습니다. 리소스가 PHP 핸들러에서 요청 될 때마다 구문 분석이 다시 시작되고 이전 실행에서 남아있는 프로그램 상태가 없습니다. 상태가없는 환경이므로 상태를 유지 관리해야합니다. 이런 이유 때문에 PHP는 시간이 지남에 따라 변경되거나 상태를 유지하는 입력을 처리하지 않습니다.

$myarray[] = "newvalue"; 

또는

$myarray['newkey'] = "newvalue"; 

스트림 처리하려면 :

while (!feof($handle)){ $data = fgets($handle, 4096); } 
+0

좋은 대답을, 나는

이 말했다되는 배열에 추가하는 가장 간단한 방법은 follwing을이다 결국 다른 방법으로 파일을 작성하고 나중에 이벤트 mySQL을 업데이트합니다. – waxical

관련 문제