PHP - Tipi di variabili

Il modo principale per memorizzare le informazioni nel mezzo di un programma PHP è usare una variabile.

Ecco le cose più importanti da sapere sulle variabili in PHP.

  • Tutte le variabili in PHP sono indicate con un segno di dollaro iniziale ($).

  • Il valore di una variabile è il valore della sua assegnazione più recente.

  • Le variabili vengono assegnate con l'operatore =, con la variabile a sinistra e l'espressione da valutare a destra.

  • Le variabili possono, ma non è necessario, essere dichiarate prima dell'assegnazione.

  • Le variabili in PHP non hanno tipi intrinseci: una variabile non sa in anticipo se verrà utilizzata per memorizzare un numero o una stringa di caratteri.

  • Le variabili utilizzate prima di essere assegnate hanno valori predefiniti.

  • PHP fa un buon lavoro nel convertire automaticamente i tipi da uno all'altro quando necessario.

  • Le variabili PHP sono simili a Perl.

PHP ha un totale di otto tipi di dati che utilizziamo per costruire le nostre variabili:

  • Integers - sono numeri interi, senza punto decimale, come 4195.

  • Doubles - sono numeri in virgola mobile, come 3.14159 o 49.1.

  • Booleans - hanno solo due possibili valori, vero o falso.

  • NULL - è un tipo speciale che ha un solo valore: NULL.

  • Strings - sono sequenze di caratteri, come "PHP supporta le operazioni sulle stringhe".

  • Arrays - sono raccolte denominate e indicizzate di altri valori.

  • Objects - sono istanze di classi definite dal programmatore, che possono impacchettare altri tipi di valori e funzioni che sono specifici della classe.

  • Resources - sono variabili speciali che contengono riferimenti a risorse esterne a PHP (come le connessioni al database).

I primi cinque sono tipi semplici e i due successivi (array e oggetti) sono composti: i tipi composti possono impacchettare altri valori arbitrari di tipo arbitrario, mentre i tipi semplici no.

In questo capitolo spiegheremo solo il tipo di dati semplice. Array e oggetti verranno spiegati separatamente.

Interi

Sono numeri interi, senza punto decimale, come 4195. Sono il tipo più semplice. Corrispondono a numeri interi semplici, sia positivi che negativi. I numeri interi possono essere assegnati alle variabili o possono essere utilizzati nelle espressioni, in questo modo:

$int_var = 12345;
$another_int = -12345 + 12345;

Il numero intero può essere in formato decimale (base 10), ottale (base 8) ed esadecimale (base 16). Il formato decimale è l'impostazione predefinita, gli interi ottali sono specificati con uno 0 iniziale e gli esadecimali hanno uno 0x iniziale.

Per le piattaforme più comuni, il numero intero più grande è (2 ** 31. 1) (o 2.147.483.647) e il numero intero più piccolo (più negativo) è. (2 ** 31. 1) (o. 2.147.483.647).

Doppio

A loro piace 3.14159 o 49.1. Per impostazione predefinita, le doppie stampe con il numero minimo di cifre decimali necessarie. Ad esempio, il codice -

<?php
   $many = 2.2888800;
   $many_2 = 2.2111200;
   $few = $many + $many_2;
   
   print("$many + $many_2 = $few <br>");
?>

Produce il seguente output del browser:

2.28888 + 2.21112 = 4.5

Booleano

Hanno solo due valori possibili, vero o falso. PHP fornisce un paio di costanti specialmente per l'uso come booleani: TRUE e FALSE, che possono essere usate in questo modo -

if (TRUE)
   print("This will always print<br>");

else
   print("This will never print<br>");

Interpretare altri tipi come booleani

Ecco le regole per determinare la "verità" di qualsiasi valore non già di tipo booleano -

  • Se il valore è un numero, è falso se esattamente uguale a zero e vero altrimenti.

  • Se il valore è una stringa, è falso se la stringa è vuota (ha zero caratteri) o è la stringa "0", altrimenti è vero.

  • I valori di tipo NULL sono sempre falsi.

  • Se il valore è un array, è falso se non contiene altri valori, altrimenti è vero. Per un oggetto, contenere un valore significa avere una variabile membro a cui è stato assegnato un valore.

  • Le risorse valide sono vere (sebbene alcune funzioni che restituiscono risorse quando hanno esito positivo restituiranno FALSE se non riuscite).

  • Non utilizzare il doppio come booleano.

Ciascuna delle seguenti variabili ha il valore di verità incorporato nel suo nome quando viene utilizzata in un contesto booleano.

$true_num = 3 + 0.14159;
$true_str = "Tried and true"
$true_array[49] = "An array element";
$false_array = array();
$false_null = NULL;
$false_num = 999 - 999;
$false_str = "";

NULLO

NULL è un tipo speciale che ha un solo valore: NULL. Per dare a una variabile il valore NULL, assegnalo semplicemente in questo modo:

$my_var = NULL;

La costante speciale NULL è in maiuscolo per convenzione, ma in realtà non fa distinzione tra maiuscole e minuscole; potresti anche aver digitato -

$my_var = null;

Una variabile a cui è stato assegnato NULL ha le seguenti proprietà:

  • Restituisce FALSE in un contesto booleano.

  • Restituisce FALSE quando viene testato con la funzione IsSet ().

stringhe

Sono sequenze di caratteri, come "PHP supporta le operazioni sulle stringhe". Di seguito sono riportati esempi validi di stringa

$string_1 = "This is a string in double quotes";
$string_2 = 'This is a somewhat longer, singly quoted string';
$string_39 = "This string has thirty-nine characters";
$string_0 = ""; // a string with zero characters

Le stringhe citate singolarmente vengono trattate quasi letteralmente, mentre le stringhe citate due volte sostituiscono le variabili con i loro valori e interpretano in modo speciale determinate sequenze di caratteri.

<?php
   $variable = "name";
   $literally = 'My $variable will not print!';
   
   print($literally);
   print "<br>";
   
   $literally = "My $variable will print!";
   print($literally);
?>

Questo produrrà il seguente risultato:

My $variable will not print!
My name will print

Non ci sono limiti artificiali alla lunghezza delle stringhe: entro i limiti della memoria disponibile, dovresti essere in grado di creare stringhe arbitrariamente lunghe.

Le stringhe delimitate da virgolette doppie (come in "this") vengono preelaborate in entrambi i seguenti due modi da PHP:

  • Alcune sequenze di caratteri che iniziano con la barra rovesciata (\) vengono sostituite con caratteri speciali

  • I nomi delle variabili (che iniziano con $) vengono sostituiti con rappresentazioni di stringa dei loro valori.

Le sostituzioni della sequenza di escape sono:

  • \ n è sostituito dal carattere di nuova riga
  • \ r è sostituito dal carattere di ritorno a capo
  • \ t è sostituito dal carattere di tabulazione
  • \ $ è sostituito dal simbolo del dollaro stesso ($)
  • \ "è sostituito da una singola virgoletta doppia (")
  • \\ è sostituito da una singola barra rovesciata (\)

Qui documento

È possibile assegnare più righe a una singola variabile stringa utilizzando here document -

<?php
   $channel =<<<_XML_
   
   <channel>
      <title>What's For Dinner</title>
      <link>http://menu.example.com/ </link>
      <description>Choose what to eat tonight.</description>
   </channel>
   _XML_;
   
   echo <<<END
   This uses the "here document" syntax to output multiple lines with variable 
   interpolation. Note that the here document terminator must appear on a line with 
   just a semicolon. no extra whitespace!
   
END; print $channel; ?>

Questo produrrà il seguente risultato:

This uses the "here document" syntax to output
multiple lines with variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!

<channel>
<title>What's For Dinner<title>
<link>http://menu.example.com/<link>
<description>Choose what to eat tonight.</description>

Ambito variabile

L'ambito può essere definito come l'intervallo di disponibilità che una variabile ha per il programma in cui è dichiarata. Le variabili PHP possono essere uno dei quattro tipi di ambito:

Denominazione delle variabili

Le regole per nominare una variabile sono:

  • I nomi delle variabili devono iniziare con una lettera o un trattino basso.

  • Un nome di variabile può essere composto da numeri, lettere, trattini bassi ma non è possibile utilizzare caratteri come +, -,%, (,). & , eccetera

Non ci sono limiti di dimensione per le variabili.