/** * (non-PHPdoc) * @see CommonAction::edit() * 配置文件新增 */ public function add() { $this->assign("md", $_REQUEST['md']); //查询 排序 $model = D("Dynamicconf"); if (file_exists($model->GetFile($_REQUEST['md']))) { $aryRule = (require $model->GetFile($_REQUEST['md'])); } Krsort($aryRule); foreach ($aryRule as $k => $v) { $id = $k + 1; break; } //$id 为已有字段排序 最大序号 $this->assign("id", $id + 1); $this->display(); }
function kill($x = '') { static $t, $db; if (e(',die,kill,r302,r301', 1) or $t) { die; } #évite toute recursion et la place en fonction de die final, notez que plusieurs fonctions de shutdown peuvent être définies l'appel à la fonction permet de stocker un context backtrace if (isset($GLOBALS['mysqlconnection'])) { mysqli_close($GLOBALS['mysqlconnection']); unset($GLOBALS['mysqlconnection']); } if (J10) { FB($_ENV); } if (isset($_ENV['dieecho'])) { echo implode('<li>', $_ENV['dieecho']); } #dernier echo if ($x) { echo $x; } Gt('kill'); $t = 1; $_ENV['backtrace'] = debug_backtrace(); #attribuer le dernier backtrace if (!isset($_ENV['backtrace'][0]['file'])) { $_ENV['backtrace'] = 'die;'; } else { foreach ($_ENV['backtrace'] as $k => $v) { if (preg_match('~^(require|include)~i', $v['function'])) { continue; } $b[] = str_replace('/home/www/', '', $v['file']) . ':' . $v['line'] . ' ::: ' . $v['function'] . (count($v['args']) > 0 ? "(" . fixSer($v['args']) . ")" : '()'); } Krsort($b); $_ENV['backtrace'] = $b; } $db = debug_backtrace(); krsort($db); $bt = print_r($_ENV['backtrace'], 1); #if($bt!='die;'&&j9&&preg_match("#\.(html?|php)#",SU))fb('kill::'.$bt); if (count($db) > 1 && J9 && preg_match("#\\.(html?|php)#", SU)) { fb('kill::' . print_r($db, 1)); } if (e('sqlon', 1)) { rep('#,sqlon:[^,]+#', '', $_ENV['args']); } if (session_id()) { session_write_close(); } #fermer la session if (isset($_ENV['argswrite'])) { FPC(ERLOGS, "\n" . $_ENV['args'], 4); } #écrire arguments dans error log if (STARTER) { if (isset($_GET['r301'])) { FAP(IPF, 'lh', '!301'); } else { FAP(IPF, 'lh', '!200'); } } #écrire les ipf FAP(1); FPC(1); Gt('kill.2:fap'); #écrire les fichiers en attente if (ini_get('apc.enabled')) { global $apc; #Si APC est présent avec des variables à enregistrer if (count($apc) > 1) { $size = $apc['size']; unset($apc['size']); foreach ($apc as $k => $v) { $s = count($v) - $size[$k]; if ($s == 0) { continue; } ApcP($k, $v, $s); } } } e(',kill,die'); #no recursion if (isset($_POST['shut1']) || US == 'ben') { die; } #||$a['USER']=='ben'||$a['USER']=='root' #finalization shutdown av("//shut:".$_ENV['args'].':'.e(',exit,r301,dead1,timerror,timerror',1),-1);#dev|/ if (isset($_ENV['eval1'])) { e('eval1'); eval($_ENV['eval1']); } #pour pousser des fonctions : ex : système de cache par dessus joomla if (RS != 404 && (isset($_ENV['eval']) || isset($_ENV['vars'])) && !preg_match("~base64|(\\.|\\?)(css|js|rss|jpe?g|gif|ico|png)\$~", u) && filemtime($_SERVER['SCRIPT_FILENAME']) > $_ENV['mtime']['fmtpdata']) { #av($_ENV);#de toutes façons écrit le fichier des performances if (!is_array($x)) { $x = []; } $f = TMP . "perf/" . mu . ".db"; $x['eval'] = $_ENV['eval']; $x['vars'] = $_ENV['vars']; FAP($f, $x); unset($_ENV['vars'], $_ENV['eval']); } #fpdata dans shutdown de append.php #if(strpos(SU,'x24.fr/?list='))die(pre(dbgt()).pre($a).pre($_ENV)); if (Gt('kill') > 20) { null; } #$_ENV['args'].=',FAPDcount:'.FAPD(2); #Gt('shut1');#un temps phénoménal entre cacheon et kill à parvenir ici if (US == 'ben' || e(',exit,dead1,timerror,timerror', 1)) { return; } #encore une fois, mais ne stoppe rien #elseif(j9)av($_SESSION);#if(j9)echo'+'.__LINE__;#dev #elseif($_SESSION)FAP(ipf,'session',$_SESSION);//Si session mais sans support .. prend bcp de place d'ailleurs.. #vérifier une fois sur die si,conf-loaded && $fmt['conf']>filemtime($a['SCRIPT_NAME']) || ,$conf.. unset($x); if (e(',r404,r301', 1)) { die; } #ne rien calculer de plus ... $x = memory_get_peak_usage(1) / 1000000; if ($x > 15 && !isset($_ENV['noperf']) && !e('noperf', 1) && !preg_match('~earthlight|zsimu|2Test|intranet|internes|revuehommage|alarmemaison|z/sql/~i', SU)) { Db(SU . ">usage:{$x}>" . print_r($_ENV['Mem'], 1)); if (J9) { echo "//peakus:{$x} Mo ram args:" . $_ENV['args']; } } #if(us=='ben'){xMail(adminemail,'shutdown',pre($_ENV['dbe']).DB2());die;} #av("//shut2:".$_ENV['args'],-1);#dev if (!e(',noperf', 1)) { GT('kill.4:aftermem'); perf(); Gt('kill.5:afterperf'); } #if(!J9&&!preg_match("#(\.|\?)(js|css|xml)#i",U)&&!e(',noperf',1))die("<!--kill:gene:$_ENV[lasttime]ms-->");#Final die; # de toutes façons }