Trieg
04.05.2009, 07:41
в файле есть кусок кода который мне надо выцепить..
$template->assign(array(
'PL_NAME' => $info['Name'],
'PL_FOLDER' => $pl,
'PL_CONFIG_COUNT' => ($totalconfig > 0 ) ? $totalconfig : false,
'PL_URL' => 'index.php?admin=config&n=edit&o=plugins&p='.$pl,
'PL_DESCRIPTION' => (isset($info['Description'])) ? $info['Description'] : false,
'PL_VERSION' => (isset($info['Version'])) ? $info['Version'] : false,
'PL_DATE' => (isset($info['Date'])) ? $info['Date'] : false,
'PL_AUTHOR' => (isset($info['Author'])) ? $info['Author'] : false,
'PL_COPYRIGHT' => (isset($info['Copyright'])) ? $info['Copyright'] : false,
'PL_COUNT_PART' => count($parts),
));
цепляю так preg_match_all('#\$template\s*->\s*assign\s*\(\s*array\s*\((.+\s*=>\s*.+)\)\s*\)\s*;#Uis', $plugin_file_code, $assign_vars);
на выходе получаю
Array
(
[0] =>
'PL_NAME' => $info['Name'],
'PL_FOLDER' => $pl,
'PL_CONFIG_COUNT' => ($totalconfig > 0 ) ? $totalconfig : false,
'PL_URL' => 'index.php?admin=config&n=edit&o=plugins&p='.$pl,
'PL_DESCRIPTION' => (isset($info['Description'])) ? $info['Description'] : false,
'PL_VERSION' => (isset($info['Version'])) ? $info['Version'] : false,
'PL_DATE' => (isset($info['Date'])) ? $info['Date'] : false,
'PL_AUTHOR' => (isset($info['Author'])) ? $info['Author'] : false,
'PL_COPYRIGHT' => (isset($info['Copyright'])) ? $info['Copyright'] : false,
'PL_COUNT_PART' => count($parts),
)
по идее меня интересуют тока ключи массива.. можно ли при помощи 1 регулярки получить все ключи в виде
Array
(
[0] => PL_NAME
[1] => PL_FOLDER
[2] => PL_CONFIG_COUNT
[3] => PL_URL
[4] => PL_DESCRIPTION
[5] => PL_VERSION
[6] => PL_DATE
[7] => PL_AUTHOR
[8] => PL_COPYRIGHT
[9] => PL_COUNT_PART
)
$template->assign(array(
'PL_NAME' => $info['Name'],
'PL_FOLDER' => $pl,
'PL_CONFIG_COUNT' => ($totalconfig > 0 ) ? $totalconfig : false,
'PL_URL' => 'index.php?admin=config&n=edit&o=plugins&p='.$pl,
'PL_DESCRIPTION' => (isset($info['Description'])) ? $info['Description'] : false,
'PL_VERSION' => (isset($info['Version'])) ? $info['Version'] : false,
'PL_DATE' => (isset($info['Date'])) ? $info['Date'] : false,
'PL_AUTHOR' => (isset($info['Author'])) ? $info['Author'] : false,
'PL_COPYRIGHT' => (isset($info['Copyright'])) ? $info['Copyright'] : false,
'PL_COUNT_PART' => count($parts),
));
цепляю так preg_match_all('#\$template\s*->\s*assign\s*\(\s*array\s*\((.+\s*=>\s*.+)\)\s*\)\s*;#Uis', $plugin_file_code, $assign_vars);
на выходе получаю
Array
(
[0] =>
'PL_NAME' => $info['Name'],
'PL_FOLDER' => $pl,
'PL_CONFIG_COUNT' => ($totalconfig > 0 ) ? $totalconfig : false,
'PL_URL' => 'index.php?admin=config&n=edit&o=plugins&p='.$pl,
'PL_DESCRIPTION' => (isset($info['Description'])) ? $info['Description'] : false,
'PL_VERSION' => (isset($info['Version'])) ? $info['Version'] : false,
'PL_DATE' => (isset($info['Date'])) ? $info['Date'] : false,
'PL_AUTHOR' => (isset($info['Author'])) ? $info['Author'] : false,
'PL_COPYRIGHT' => (isset($info['Copyright'])) ? $info['Copyright'] : false,
'PL_COUNT_PART' => count($parts),
)
по идее меня интересуют тока ключи массива.. можно ли при помощи 1 регулярки получить все ключи в виде
Array
(
[0] => PL_NAME
[1] => PL_FOLDER
[2] => PL_CONFIG_COUNT
[3] => PL_URL
[4] => PL_DESCRIPTION
[5] => PL_VERSION
[6] => PL_DATE
[7] => PL_AUTHOR
[8] => PL_COPYRIGHT
[9] => PL_COUNT_PART
)