// FIRST function send_header($contenttype='application/xhtml+xml') { $GLOBALS['now'] = gmdate('D, d M Y H:i:s') . ' GMT'; header('Expires: ' . $GLOBALS['now']); // rfc2616 - Section 14.21 header('Last-Modified: ' . $GLOBALS['now']); // Always modified //header("Cache-Control: post-check=0, pre-check=0", false); header('Cache-Control: no-store, no-cache, must-revalidate, pre-check=0, post-check=0, max-age=0'); // HTTP/1.1 header('Pragma: no-cache'); // HTTP/1.0 if($contenttype!='application/xhtml+xml'){ header('Content-Type: '.$contenttype); }else{ global $mime; $mime='text/html'; if(stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml")) { if(preg_match("/application\/xhtml\+xml;q=([01]|0\.\d{1,3}|1\.0)/i",$_SERVER["HTTP_ACCEPT"],$matches)) { $xhtml_q = $matches[1]; if(preg_match("/text\/html;q=q=([01]|0\.\d{1,3}|1\.0)/i",$_SERVER["HTTP_ACCEPT"],$matches)) { $html_q = $matches[1]; if((float)$xhtml_q >= (float)$html_q) { $mime = 'application/xhtml+xml'; } } }else{ $mime = 'application/xhtml+xml'; } } header('Content-Type: '.$mime.'; charset='.$GLOBALS['charset']); header('Vary: Accept'); } } // THEN ... // BY: function page_start($meta=false,$js=false,$css=false,$other=false){ global $mime; if($mime=='application/xhtml+xml'){ echo ''."\n";// IE Fix echo '', "\n"; } echo ''."\n"; echo ''."\n"; ... }