@ 2013-10-25T12:29:20Z <?php
// attiveremo la nostra gestione degli errori
error_reporting(0);
// funzione personalizzata di gestione dell'errore
function userErrorHandler($errno, $errmsg, $filename, $linenum, $vars)
{
// orario per la registrazione
// definisce una matrice associativa con i messaggi di errore
// in realtà i soli campi che saranno considerati sono
// E_WARNING, E_NOTICE, E_USER_ERROR,
// E_USER_WARNING and E_USER_NOTICE
$errortype = array (
E_ERROR => "Error",
E_WARNING => "Warning",
E_PARSE => "Parsing Error",
E_NOTICE => "Notice",
E_CORE_ERROR => "Core Error",
E_CORE_WARNING => "Core Warning",
E_COMPILE_ERROR => "Compile Error",
E_COMPILE_WARNING => "Compile Warning",
E_USER_ERROR => "User Error",
E_USER_WARNING => "User Warning",
E_USER_NOTICE => "User Notice",
E_STRICT => "Runtime Notice"
);
// indica gli errori per i quali fare salvare la trace delle variabili
$user_errors = array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE);
$err .= $dt ;
$err .= $errno ;
$err .= $errortype[$errno];
$err .= $errmsg ;
$err .= $filename ;
$err .= $linenum ;
if (in_array($errno, $user_errors)) {
$err .= wddx_serialize_value($vars, "Variables");
}
$err .= "</errorentry>\n\n";
// for testing
// echo $err;
// salva nell'errorlog e invia un e-mail se vi sono errori critici
error_log($err, 3, "/usr/local/php4/error.log");
function distance($vect1, $vect2)
{
if (!is_array($vect1) || !is_array($vect2)) {
trigger_error("Incorrect parameters, arrays expected", E_USER_ERROR);
return NULL;
}
if (count($vect1) != count($vect2)) {
trigger_error("Vectors need to be of the same size", E_USER_ERROR);
return NULL;
}
for ($i=0; $i<count($vect1); $i++) {
$c1 = $vect1[$i]; $c2 = $vect2[$i];
$d = 0.0;
if (!is_numeric($c1)) {
trigger_error("Coordinate $i in vector 1 is not a number, using zero",
E_USER_WARNING);
$c1 = 0.0;
}
if (!is_numeric($c2)) {
trigger_error("Coordinate $i in vector 2 is not a number, using zero",
E_USER_WARNING);
$c2 = 0.0;
}
$d += $c2*$c2 - $c1*$c1;
}
}
$old_error_handler = set_error_handler("userErrorHandler");
// variabile non definita, genera un warning
$t = I_AM_NOT_DEFINED;
// definisce dei vettori
$a = array(2, 3, "foo");
$b = array(5.5, 4.3, -1.6);
$c = array(1, -3);
// genera un errore utente
$t1 = distance($c, $b) . "\n";
// un'altro errore utente
$t2 = distance($b, "i am not an array") . "\n";
// genera un warning
$t3 = distance($a, $b) . "\n";
?>
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).
Version System time (s) User time (s) Memory (MiB) 5.4.21 0.007 0.036 12.40 5.4.20 0.008 0.043 12.40 5.4.19 0.010 0.041 12.40 5.4.18 0.010 0.041 12.40 5.4.17 0.011 0.038 12.41 5.4.16 0.011 0.038 12.40 5.4.15 0.013 0.038 12.40 5.4.14 0.010 0.041 12.08 5.4.13 0.012 0.040 12.07 5.4.12 0.010 0.042 12.03 5.4.11 0.011 0.042 12.03 5.4.10 0.010 0.042 12.03 5.4.9 0.011 0.047 12.03 5.4.8 0.010 0.043 12.03 5.4.7 0.011 0.040 12.02 5.4.6 0.012 0.040 12.03 5.4.5 0.018 0.053 12.02 5.4.4 0.010 0.041 12.01 5.4.3 0.010 0.039 12.01 5.4.2 0.011 0.041 12.00 5.4.1 0.012 0.038 12.01 5.4.0 0.012 0.038 11.50 5.3.27 0.010 0.045 12.72 5.3.26 0.013 0.044 12.72 5.3.25 0.011 0.047 12.72 5.3.24 0.012 0.045 12.72 5.3.23 0.011 0.045 12.71 5.3.22 0.020 0.043 12.68 5.3.21 0.011 0.043 12.68 5.3.20 0.010 0.046 12.68 5.3.19 0.010 0.044 12.68 5.3.18 0.013 0.045 12.68 5.3.17 0.010 0.043 12.67 5.3.16 0.011 0.045 12.67 5.3.15 0.012 0.039 12.68 5.3.14 0.010 0.042 12.67 5.3.13 0.012 0.042 12.66 5.3.12 0.010 0.043 12.66 5.3.11 0.009 0.044 12.66 5.3.10 0.009 0.043 12.14 5.3.9 0.013 0.056 12.12 5.3.8 0.010 0.040 12.11 5.3.7 0.010 0.043 12.11 5.3.6 0.012 0.042 12.09 5.3.5 0.013 0.052 12.04 5.3.4 0.011 0.043 12.04 5.3.3 0.011 0.045 12.00 5.3.2 0.011 0.042 11.78 5.3.1 0.010 0.044 11.75 5.3.0 0.015 0.041 11.73
preferences:dark mode live preview
139.39 ms | 1394 KiB | 7 Q