2009-10-18 4 views
0

아침. 내 로컬 서버에있는 파일에서 PHP 코드의 모든 부분을 가져 가고 싶습니다. 문제는 내가 어디서나, PHP 오류가 아니라 브라우저 오류를 받고있는 것 같지 않습니다.처리 PHP 코드

$file_contents = "<xmp>".file_get_contents("../www.cms.actwebdesigns.co.uk2/pageIncludes/instalation/selectMainPages.php")."</xmp>"; 

if(preg_match_all("#<\?php((?!\?>).)*#is", $file_contents, $matches)) 
{ 
    foreach($matches[0] as $phpCode) 
    { 
     $code = "<xmp>".$phpCode."\n?></xmp>"; 
    } 
} 
echo "dsds"; 
?> 

누군가 올바른 방향으로 나를 가리킬 수 있습니까?

+3

Baaaaad 질문을. 원인, 결과, 오류 및 의도를 설명 할 시간을 가져보십시오. 매매. – gahooa

+0

아침이 아닙니다. – random

+0

지난 14 개월 동안 나는 플러그 앤 플레이 CMS에서 일해 왔으며 (설치하고 멀리 45 초가 걸립니다!) 미리 만든 PHP 웹 사이트에 설치하여 결말을 내고 싶습니다. 그래서 나는 데이터를 시도하고 분리 할 필요가있다. 오류 이 웹 페이지를 사용할 수 없습니다. null의 웹 페이지가 일시적으로 다운되었거나 새 웹 주소로 영구적으로 이동했을 수 있습니다. 이 오류에 대한 추가 정보 다음은 원래 오류 메시지입니다. 오류 101 (net :: ERR_CONNECTION_RESET) : 알 수없는 오류입니다. –

답변

1
당신은 토크 나이 확장자를 사용하는 PHP 스크립트를 토큰 화 할 수 있습니다

:

http://php.net/manual/en/book.tokenizer.php

확장은 PHP의 V4.3.0 이후 PHP에 내장되어 있습니다.

$tokens = token_get_all(file_get_contents($file)); 

http://www.php.net/manual/en/function.token-get-all.php

+0

사용 방법을 잘 모르겠습니다. 모든 코드를 배열에 저장합니다. 내게 그것을 사용하기 위해 나는 그것을 무언가를 격파해야만하지 않을 것이다. –

+0

PHP 코드가 아닌 모든 코드를 반복하여 제거 할 수 있습니다. – mauris

0

이를 사용하는 방법을 잘하지 않습니다. 모든 코드를 배열에 저장합니다. 내게 그것을 사용하기 위해 나는 그것을 무언가를 격파해야만하지 않을 것이다.

+0

답변에 대한 의견이거나 질문을 수정해야합니다. – random

2

이 작업 :

$file_contents = token_get_all(file_get_contents("../www.cms.actwebdesigns.co.uk2/logged.php")); 
$start=0; 
$end=0; 
$segmentArray = array(); 
foreach($file_contents as $key => $token) 
{ 
    $tokenName = token_name($key); 
    if($start==0 && $end==0 && $tokenName=="T_OPEN_TAG") 
    { 
     $start=1; 
    } 
    if(start==1 && $end==0 && $tokenName!="T_CLOSE_TAG") 
    { 
     $entryNo = count($segmentArray); 
     $segmentArray[$entryNo][] = $token; 
    } 
    if($tokenName=="T_CLOSE_TAG") 
    { 
     $start=0; 
    } 
} 
+0

그 멋진 =) 축하해! – mauris

+0

문제가 발생했습니다. 토큰 이름 중 많은 부분이 UNKNOWN을 반환합니다. 왜 그걸 알아? –