2016-12-13 2 views
-1

Это для серверной части, независимо от клиента.Получить значение переменной по имени из строки String

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

textfile.txt содержит

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

Что я могу войти, так что я могу получить echo obTemperature значение 55?

Нет ли простого интерфейса php для чтения значений var по имени?

пожалуйста, не более сложным/половина ответов/троллинга,

+3

в качестве альтернативы, вы можете использовать файл JSON вместо этого, на вашей стороне PHP, просто получить содержимое, json декодирует его, и вы умеете идти – Ghost

+0

Спасибо, что вы пробовали это, но сложнее по результатам. , сдаться . – newuser0250

+4

Хорошо, независимо от того, что плавает ваша лодка, я бы сделал это так, '{" obTemperature ":" 55 "," obIconCode ":" 01 "}', просто файл получить содержимое, json decode, и у вас есть свой значения и делать то, что вы хотите – 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-кода вызовут ошибку синтаксического анализа.

Кроме того, вы можете рассматривать его как ini файл:

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

Или просто:

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

спасибо, просто пытаясь получить значения из файла по имени. , – newuser0250

+0

как только вы меняете ($ data), как эхо читается с eval? .. спасибо хороший ответ – newuser0250

+0

Когда вы 'eval', переменные создаются для вас. – AbraCadaver

Смежные вопросы