get_results(); $vars = array_keys($data[0]); //set Smarty variables include('/usr/lib/php/Smarty/libs/Smarty.class.php'); $smarty = new Smarty; foreach($vars as $var) { //determine whether to give variable a value or an array if(strpos($var, '__') )//this is a variable naming convention - array keys being named $singular__key and arrays being named $plural { //get array name $parts = explode('__', $var); $array_name = $parts[0].'s'; $smarty->assign($array_name, $data); $new_form = '$'.$parts[0].'.'.$var; $erdf = str_replace( '$'.$var , $new_form , $erdf); //convert to $row.key } else { $v = $data[0][$var]; $smarty->assign($var, $v); } } $erdf = preg_replace($eRdfT->REG_EXES['SPARQL_OPTIONAL'],'$1',$erdf); $smarty->template_dir = './templates'; //now process $handle = fopen("templates/temp_test.tpl", "w"); if (fwrite($handle, $erdf) === FALSE) { echo "Cannot write to file ($filename)"; exit; } fclose($handle); $smarty->display("temp_test.tpl"); ?>