Skip to content

Instantly share code, notes, and snippets.

@lukebarton
Created March 28, 2012 15:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lukebarton/2227067 to your computer and use it in GitHub Desktop.
Save lukebarton/2227067 to your computer and use it in GitHub Desktop.
<?php
// Don't touch these
$elementLevel = array(
0 => 'zero',
1 => 'one',
2 => 'two',
3 => 'three',
4 => 'four',
5 => 'five',
6 => 'six',
7 => 'seven',
8 => 'eight',
9 => 'nine',
10 => 'ten'
);
$xmlElement = array(
'level' => 6,
'tag' => 'this-is-a-tag',
'value' => 'this-is-a-value'
);
$responseStruct = array(
'one' => array(
'two' => array(
'three' => array(
'four' => array(
'five' => array(
'six' => array(
'seven' => array(
'eight' => array(
'nine' => array(
'ten' => array(
)
)
)
)
)
)
)
)
)
)
);
// They're what's missing
$startLevel = 1;
$evalStatement = '$responseStruct';
while($startLevel < $xmlElement['level']) {
$evalStatement .= '[strtolower($elementLevel['. $startLevel .'])]';
$startLevel++;
}
$evalStatement .= '[strtolower($xmlElement[\'tag\'])] = $xmlElement[\'value\'];';
eval($evalStatement);
var_dump($responseStruct);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment