2016-12-13 5 views
-1

클라이언트에 관계없이 서버 쪽입니다.문자열에서 이름으로 변수 값 가져 오기

$data= file_get_contents('textfile.txt'); 

textfile.txt

var obTemperature = "55"; 
var obIconCode = "01"; 

나는 내가 55echo obTemperature 가치를 얻을 수있는 일을 입력 할 수 있습니다 포함?

var 값을 이름으로 읽는 간단한 PHP 인터페이스가 없습니까? 복잡한/반 답변/건지 러 이상

없는하시기 바랍니다

,

+3

내용, json 디코딩 및 당신이 가서 좋은거야 – Ghost

+0

시도했지만 결과에 복잡하지만. . 포기 했어 . – newuser0250

+4

글쎄요, 보트를 뜨는 곳이든간에, {{ "obTemperature": "55", "obIconCode": "01"}', 그냥 파일 내용을 가져오고, json 디코드하면됩니다. 값과 당신이 원하는 것을 할 – Ghost

답변

0
당신은 정규 표현식을 사용할 수 있습니다

: 당신이 일반적으로 수행 할 작업을

preg_match('/var obTemperature = "(\d+)";/', $data, $match); 
$temperature = $match[1]; 

DEMO

+0

echo $ temperature; 아무것도 생산하지 않았다 Barmar – newuser0250

+0

나는 그것을 보여주는 민주당 원을 추가했습니다. 그것이 당신을 위해 일하지 않는다면 그 파일은 당신이 말한 내용을 담고 있지 않습니다. 공백은 네가 보여준 것과 정확히 같지 않을까?분명히 정규식을 조정하여보다 유연하게 만들 수 있습니다. – Barmar

0

당신은 설명 나을 것을 하지만이 파일 형식에 묶여 있고 형식이 일관되면 :

$data = str_replace('var ', '$', $data); 
eval($data); 

echo $obTemperature; 
echo $obIconCode; 

그러나 다른 유형의 JavaScript 코드는 구문 분석 오류를 발생시킵니다.

$data = str_replace('var ', '', parse_ini_string($data)); 
echo $data['obTemperature']; 

또는 단지 :

또한, 당신은 ini 파일로 처리 할 수 ​​있습니다 당신은 얻을, 당신의 PHP 측에서 대신 JSON 파일을 사용할 수 있습니다, 대안으로

$data = parse_ini_string($data); 
echo $data['var obTemperature']; 
+0

그냥 이름으로 파일에서 값을 가져 오는 것을 시도해 주셔서 감사합니다. . – newuser0250

+0

일단 eval ($ data) eval에서 echo가 어떻게 읽습니까? .. 고맙습니다. 좋은 대답 – newuser0250

+0

'eval' 변수를 사용할 때 만들어집니다. – AbraCadaver