PHP  
downloads | documentation | faq | getting help | mailing lists | | php.net sites | links 
search for in the  
previousurlencodedoublevalnext
Last updated: Tue, 03 Sep 2002
view the printer friendly version or the printer friendly version with notes or change language to English | Brazilian Portuguese | Chinese | Czech | Dutch | Finnish | French | German | Hungarian | Japanese | Korean | Polish | Romanian | Russian | Spanish | Swedish | Turkish

CI. Funzioni di Variabili

Per maggiori informazioni sul comportamento delle variabili vedere la sezione Variabili nel capitolo Riferimento al Linguaggio del manuale.

Sommario
doubleval -- Alias di floatval()
empty -- Determina se una variabile � valorizzata
floatval -- Restituisce il valore di una variabile di tipo float
get_defined_vars --  Restituisce un'array contenente tutte le variabili definite
get_resource_type --  Restituisce il tipo di risorsa
gettype -- Resituisce il tipo di una variabile
import_request_variables -- Imposta la visibilt� a globale per le variabili GET/POST/Cookie
intval -- Estrae il valore intero da una variabile
is_array -- Verifica se una variabile � un array
is_bool --  Verifica se una variabile � di tipo boolean
is_callable --  Verifica se l'argomento � un valido costrutto richiamabile.
is_double -- Alias di is_float()
is_float -- Verifica se una variabile � di tipo float (decimale a virgola mobile)
is_int -- Verifica se una variabile � di tipo integer
is_integer -- Alias di is_int()
is_long -- Alias di is_int()
is_null --  Verifica se la variabile � di tipo NULL
is_numeric --  Verifica se una variabile � un numero o una stringa numerica
is_object -- Verifica se una variabile � di tipo object
is_real -- Alias di is_float()
is_resource --  Verifica se una variabile � una risorsa
is_scalar --  Verifica se la variabile � di tipo scalare
is_string -- Verifica se una variabile � una stringa
isset -- Verifica se una variabile � definita
print_r --  Stampa informazioni relative al contenuto di una variabile in formato leggibile
serialize --  Genera una versione archiviabile del valore
settype -- Definisce il tipo di una variabile
strval -- Restituisce il valore di una variabile interpretato come stringa
unserialize --  Crea un valore PHP a partire da una rappresentazione archiviata
unset -- Cancella una data variabile
var_dump -- Stampa delle informazioni relative ad una variabile
var_export -- Visualizza o restituisce una variabile in formato stringa
User Contributed Notes
Funzioni di Variabili
add a note about notes
[email protected]
06-Feb-2002 06:03

Note that the variable functions do not seem to work whatsoever when testing the $_SESSION array. PHP 4.1.0, apache 1.3.20, Win32

Yes, I will be submitting a bug report.

[email protected]
11-Mar-2002 04:22

Whoever is writing an application for a world-wide-use and wants to use $_GET etc... but cannot because of the compatibility problems, look at this peace of code.

It will help you to avoid the trouble by rewriting the variables yourself in some silly config file prepended to each script.

<?php

/// by Maxim Maletsky <[email protected]>

$evil_vars = Array('GET', 'POST', 'COOKIE', 'SERVER', 'ENV', 'REQUEST', 'SESSION');
$php_version = preg_replace("/[^\d]/", '', phpversion());

for($i=0; $i<sizeof($evil_vars); $i++) {
if(is_array(${"HTTP_{$evil_vars[$i]}_VARS"})) {
foreach(${"HTTP_{$evil_vars[$i]}_VARS"} as $var=>$val) {
if($php_version<410) {
$GLOBALS["_{$evil_vars[$i]}"][$var] = $val;
}
unset($$key);
}
}
unset(${"HTTP_{$evil_vars[$i]}_VARS"});
}

?>

What does it do?
It loops every $HTTP_*_VARS variable, if you run a version below 4.1.0 then it will create you a GLOBAL $_* var and will unset you the old ones.

This means that anyone on any version sending you a variable will not get it processed in the script unless it was referenced as $_*['var'].

I.E:

www.yoursite.com/file.php?some=data

<?

// that piece of code here

echo $some; // will not come up
echo $_GET['some'] // will show up just as it would in versions above 4.1.0

function test() {
echo $_GET['some']; // will also work because a fake $_GET is GLOBAL
}

?>

Cheers,
Maxim Maletsky

[email protected]
22-Mar-2002 01:55

Excellent and useful code Maxim Maletsky, but there is a small bug fix for it...

<?php

/// by Maxim Maletsky <[email protected]>

$evil_vars = Array('GET', 'POST', 'COOKIE', 'SERVER', 'ENV', 'REQUEST',
'SESSION');
$php_version = preg_replace("/[^\d]/", '', phpversion());

for($i=0; $i<sizeof($evil_vars); $i++) {
if(is_array(${"HTTP_{$evil_vars[$i]}_VARS"})) {
foreach(${"HTTP_{$evil_vars[$i]}_VARS"} as $var=>$val)
{
if($php_version<410) {
$GLOBALS["_{$evil_vars[$i]}"][$var] = $val;
}
unset($$var); //changed from unset($$key); by dekiland
}
}
unset(${"HTTP_{$evil_vars[$i]}_VARS"});
}

Double cheers,
dekiland

add a note about notes
previousurlencodedoublevalnext
Last updated: Tue, 03 Sep 2002
show source | credits | stats | mirror sites
Copyright © 2001, 2002 The PHP Group
All rights reserved.
This mirror generously provided by:
Last updated: Fri Sep 6 19:51:45 2002 CEST