function parseFormDefinition($inputStr) { $fields = array(); foreach ($this->attributeKeys as $key) { $fields[$key] = $key; } $atts = fm_get_str_data($inputStr, $fields); $formElements = array(); $nextElement = false; foreach ($atts as $att) { switch ($att['field']) { case 'text': case 'textarea': case 'checkbox': case 'separator': case 'note': case 'recaptcha': case 'custom_list': case 'file': if ($nextElement !== false) { $formElements[] = $nextElement; } $nextElement = array(); $nextElement['type'] = $att['field']; break; default: $nextElement[$att['field']] = $att['value']; } } $formElements[] = $nextElement; return $formElements; }
function fm_get_file_data($file, $fields) { $fp = fopen($file, 'r'); $file_data = fread($fp, 8192); fclose($fp); $file_vars = fm_get_str_data($file_data, $fields); return $file_vars; }