Следующее является подлым, недопустимым, зависимым от компилятора, и не может работать в зависимости от различных деталей реализации.
#define private public
#define class struct
, Но это - ответ на Ваш OP, в котором Вы явно приглашаете технику, которую, и я заключаю в кавычки, "полностью глупо и что любой, кто хотел бы попробовать такую вещь в производственном коде, должен быть уволен и/или застрелен".
<час>Другая техника должна получить доступ к данным члена парламента, не занимающего официального поста путем построения указателей с помощью hard-coded/hand-coded смещения с начала объекта.
Самым простым способом, вероятно, было бы начать с ассоциативного массива пар, которые вы хотите:
$data = array("myfirstvalue" => "myfirsttext", "mysecondvalue" => "mysecondtext");
, затем использовать foreach и некоторую конкатенацию строк:
$jsontext = "[";
foreach($data as $key => $value) {
$jsontext .= "{oV: '".addslashes($key)."', oT: '".addslashes($value)."'},";
}
$jsontext = substr_replace($jsontext, '', -1); // to get rid of extra comma
$jsontext .= "]";
Или, если у вас есть последняя версия PHP, вы можете использовать встроенные функции кодирования json - просто будьте осторожны при передаче им данных, чтобы они соответствовали ожидаемому формату.
Когда у вас есть данные PHP, вы можете использовать функцию json_encode
; он связан с PHP начиная с PHP 5.2
В вашем случае строка JSON представляет:
В PHP это создаст структура, которую вы представляете:
$data = array(
(object)array(
'oV' => 'myfirstvalue',
'oT' => 'myfirsttext',
),
(object)array(
'oV' => 'mysecondvalue',
'oT' => 'mysecondtext',
),
);
var_dump($data);
var_dump
дает вам:
array
0 =>
object(stdClass)[1]
public 'oV' => string 'myfirstvalue' (length=12)
public 'oT' => string 'myfirsttext' (length=11)
1 =>
object(stdClass)[2]
public 'oV' => string 'mysecondvalue' (length=13)
public 'oT' => string 'mysecondtext' (length=12)
И, закодировав ее в JSON:
$json = json_encode($data);
echo $json;
, вы получите:
[{"oV":"myfirstvalue","oT":"myfirsttext"},{"oV":"mysecondvalue","oT":"mysecondtext"}]
Кстати: Фролм, что я помню, я '