PHP Tipi di dati


Esempio

Esistono diversi tipi di dati per scopi diversi. PHP non ha definizioni di tipo esplicite, ma il tipo di una variabile è determinato dal tipo di valore assegnato o dal tipo a cui è assegnato. Questa è una breve panoramica sui tipi, per una documentazione dettagliata ed esempi, vedi l'argomento dei tipi PHP .

Esistono i seguenti tipi di dati in PHP: null, booleano, intero, float, stringa, oggetto, risorsa e array.

Nullo

Null può essere assegnato a qualsiasi variabile. Rappresenta una variabile senza valore.

$foo = null;

Ciò invalida la variabile e il suo valore sarebbe indefinito o annullato se chiamato. La variabile viene cancellata dalla memoria ed eliminata dal garbage collector.

booleano

Questo è il tipo più semplice con solo due valori possibili.

$foo = true;
$bar = false;

Le booleane possono essere utilizzate per controllare il flusso del codice.

$foo = true;

if ($foo) {
    echo "true";
} else {
    echo "false";
}

Numero intero

Un numero intero è un numero intero positivo o negativo. Può essere utilizzato con qualsiasi base numerica. La dimensione di un intero dipende dalla piattaforma. PHP non supporta gli interi senza segno.

$foo = -3;  // negative
$foo = 0;   // zero (can also be null or false (as boolean)
$foo = 123; // positive decimal
$bar = 0123; // octal = 83 decimal
$bar = 0xAB; // hexadecimal = 171 decimal
$bar = 0b1010; // binary = 10 decimal
var_dump(0123, 0xAB, 0b1010); // output: int(83) int(171) int(10)

Galleggiante

I numeri in virgola mobile, "doppi" o semplicemente "float" sono numeri decimali.

$foo = 1.23;
$foo = 10.0;
$bar = -INF;
$bar = NAN;

schieramento

Un array è come un elenco di valori. La forma più semplice di un array è indicizzata dal numero intero e ordinata dall'indice, con il primo elemento che giace nell'indice 0.

$foo = array(1, 2, 3); // An array of integers
$bar = ["A", true, 123 => 5]; // Short array syntax, PHP 5.4+

echo $bar[0];    // Returns "A"
echo $bar[1];    // Returns true
echo $bar[123];  // Returns 5
echo $bar[1234]; // Returns null

Le matrici possono anche associare una chiave diversa da un indice intero a un valore. In PHP, tutti gli array sono array associativi dietro le quinte, ma quando ci riferiamo a un 'array associativo' distintamente, di solito intendiamo uno che contiene una o più chiavi che non sono interi.

$array = array();
$array["foo"] = "bar";
$array["baz"] = "quux";
$array[42] = "hello";
echo $array["foo"]; // Outputs "bar"
echo $array["bar"]; // Outputs "quux"
echo $array[42]; // Outputs "hello"

Stringa

Una stringa è come una matrice di caratteri.

$foo = "bar";

Come un array, una stringa può essere indicizzata per restituire i suoi singoli caratteri:

$foo = "bar";
echo $foo[0]; // Prints 'b', the first character of the string in $foo.

Oggetto

Un oggetto è un'istanza di una classe. Le sue variabili e metodi sono accessibili con l'operatore -> .

$foo = new stdClass(); // create new object of class stdClass, which a predefined, empty class
$foo->bar = "baz";
echo $foo->bar; // Outputs "baz"
// Or we can cast an array to an object:
$quux = (object) ["foo" => "bar"];
echo $quux->foo; // This outputs "bar".

Risorsa

Le variabili delle risorse contengono maniglie speciali per i file aperti, le connessioni al database, i flussi, le aree di immagine e simili (come indicato nel manuale ).

$fp = fopen('file.ext', 'r'); // fopen() is the function to open a file on disk as a resource.
var_dump($fp); // output: resource(2) of type (stream)

Per ottenere il tipo di una variabile come stringa, utilizzare la funzione gettype() :

echo gettype(1); // outputs "integer"
echo gettype(true); // "boolean"