PHP - typy zmiennych
Głównym sposobem przechowywania informacji w środku programu PHP jest użycie zmiennej.
Oto najważniejsze informacje o zmiennych w PHP.
- Wszystkie zmienne w PHP są oznaczone wiodącym znakiem dolara ($). 
- Wartość zmiennej to wartość jej ostatniego przypisania. 
- Zmiennym przypisuje się operator =, ze zmienną po lewej stronie i wyrażeniem, które ma być ocenione po prawej. 
- Zmienne mogą, ale nie muszą, być deklarowane przed przypisaniem. 
- Zmienne w PHP nie mają typów wewnętrznych - zmienna nie wie z góry, czy będzie używana do przechowywania liczby, czy ciągu znaków. 
- Zmienne używane przed ich przypisaniem mają wartości domyślne. 
- PHP wykonuje dobrą robotę, automatycznie konwertując typy z jednego na inny, gdy jest to konieczne. 
- Zmienne PHP są podobne do Perla. 
PHP ma łącznie osiem typów danych, których używamy do konstruowania naszych zmiennych -
- Integers - są liczbami całkowitymi bez kropki dziesiętnej, np. 4195. 
- Doubles - to liczby zmiennoprzecinkowe, takie jak 3.14159 lub 49.1. 
- Booleans - mają tylko dwie możliwe wartości, prawda lub fałsz. 
- NULL - to specjalny typ, który ma tylko jedną wartość: NULL. 
- Strings - to sekwencje znaków, na przykład „PHP obsługuje operacje na łańcuchach”. 
- Arrays - są nazwanymi i zindeksowanymi zbiorami innych wartości. 
- Objects - są instancjami klas zdefiniowanych przez programistę, które mogą spakować zarówno inne rodzaje wartości, jak i funkcje specyficzne dla tej klasy. 
- Resources - to specjalne zmienne, które przechowują odniesienia do zasobów zewnętrznych w stosunku do PHP (takich jak połączenia z bazą danych). 
Pierwszych pięć to typy proste , a kolejne dwa (tablice i obiekty) są złożone - typy złożone mogą zawierać inne, arbitralne wartości dowolnego typu, podczas gdy typy proste nie.
W tych rozdziałach wyjaśnimy tylko proste typy danych. Tablica i obiekty zostaną wyjaśnione osobno.
Liczby całkowite
Są to liczby całkowite bez kropki dziesiętnej, np. 4195. Są to najprostsze typy. Odpowiadają one prostym liczbom całkowitym, zarówno dodatnim, jak i ujemnym. Liczby całkowite można przypisywać do zmiennych lub używać w wyrażeniach, na przykład -
$int_var = 12345;
$another_int = -12345 + 12345;Liczba całkowita może mieć format dziesiętny (podstawa 10), ósemkowy (podstawa 8) i szesnastkowy (podstawa 16). Format dziesiętny jest domyślny, ósemkowe liczby całkowite są określane z początkowym 0, a liczby szesnastkowe mają początkowy 0x.
W przypadku większości popularnych platform największa liczba całkowita to (2 ** 31,1) (lub 2 147 483 647), a najmniejsza (najbardziej ujemna) liczba całkowita to. (2 ** 31,1) (lub .2 147 483 647).
Debel
Lubią 3.14159 lub 49.1. Domyślnie podwajane są drukowane z minimalną wymaganą liczbą miejsc dziesiętnych. Na przykład kod -
<?php
   $many = 2.2888800;
   $many_2 = 2.2111200;
   $few = $many + $many_2;
   
   print("$many + $many_2 = $few <br>");
?>Tworzy następujące dane wyjściowe przeglądarki -
2.28888 + 2.21112 = 4.5Boolean
Mają tylko dwie możliwe wartości - prawda lub fałsz. PHP dostarcza kilka stałych specjalnie do użycia jako wartości logiczne: TRUE i FALSE, których można używać w ten sposób -
if (TRUE)
   print("This will always print<br>");
else
   print("This will never print<br>");Interpretowanie innych typów jako wartości logicznych
Oto zasady określania „prawdy” dowolnej wartości, która nie jest jeszcze typu boolowskiego -
- Jeśli wartość jest liczbą, jest fałszywa, jeśli dokładnie równa się zero, lub prawda w przeciwnym razie. 
- Jeśli wartość jest ciągiem znaków, jest fałszem, jeśli ciąg jest pusty (ma zero znaków) lub jest łańcuchem „0”, aw przeciwnym razie jest prawdziwy. 
- Wartości typu NULL są zawsze fałszywe. 
- Jeśli wartość jest tablicą, jest fałszem, jeśli nie zawiera innych wartości, i jest prawdziwa w przeciwnym razie. W przypadku obiektu posiadanie wartości oznacza posiadanie zmiennej składowej, której została przypisana wartość. 
- Prawidłowe zasoby są prawdziwe (chociaż niektóre funkcje, które zwracają zasoby po pomyślnym zakończeniu, zwrócą FALSE, gdy się nie powiodą). 
- Nie używaj wartości podwójnych jako wartości logicznych. 
Każda z poniższych zmiennych ma wartość prawda osadzoną w swojej nazwie, gdy jest używana w kontekście boolowskim.
$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 = "";ZERO
NULL to specjalny typ, który ma tylko jedną wartość: NULL. Aby nadać zmiennej wartość NULL, po prostu przypisz ją w ten sposób -
$my_var = NULL;Specjalna stała NULL jest zapisywana wielkimi literami zgodnie z konwencją, ale w rzeczywistości wielkość liter nie jest rozróżniana; równie dobrze mogłeś wpisać -
$my_var = null;Zmienna, której przypisano wartość NULL, ma następujące właściwości -
- Ocenia FALSE w kontekście boolowskim. 
- Zwraca FALSE podczas testowania z funkcją IsSet (). 
Smyczki
Są to sekwencje znaków, na przykład „PHP obsługuje operacje na łańcuchach znaków”. Poniżej znajdują się prawidłowe przykłady ciągów
$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Łańcuchy w pojedynczym cudzysłowie są traktowane prawie dosłownie, podczas gdy łańcuchy w podwójnych cudzysłowach zastępują zmienne ich wartościami, a także specjalnie interpretują określone sekwencje znaków.
<?php
   $variable = "name";
   $literally = 'My $variable will not print!';
   
   print($literally);
   print "<br>";
   
   $literally = "My $variable will print!";
   print($literally);
?>To da następujący wynik -
My $variable will not print!
My name will printNie ma sztucznych ograniczeń co do długości struny - w granicach dostępnej pamięci powinieneś móc tworzyć dowolnie długie struny.
Łańcuchy rozdzielane podwójnymi cudzysłowami (jak w "this") są wstępnie przetwarzane na oba poniższe sposoby przez PHP -
- Niektóre sekwencje znaków rozpoczynające się od ukośnika odwrotnego (\) są zastępowane znakami specjalnymi 
- Nazwy zmiennych (zaczynające się od $) są zastępowane ciągami reprezentującymi ich wartości. 
Zastępstwa w sekwencji ucieczki to -
- \ n jest zastępowane znakiem nowego wiersza
- \ r jest zastępowany znakiem powrotu karetki
- \ t jest zastępowane przez znak tabulacji
- \ $ jest zastępowane przez sam znak dolara ($)
- \ "zastępuje pojedynczy cudzysłów (")
- \\ jest zastępowane przez pojedynczy lewy ukośnik (\)
Tutaj Dokument
Możesz przypisać wiele wierszy do jednej zmiennej łańcuchowej, używając tutaj dokumentu -
<?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;
?>To da następujący wynik -
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>Zmienny zakres
Zakres można zdefiniować jako zakres dostępności zmiennej w programie, w którym jest zadeklarowana. Zmienne PHP mogą być jednym z czterech typów zasięgu -
- Zmienne lokalne 
- Parametry funkcji 
- Zmienne globalne 
- Zmienne statyczne 
Nazewnictwo zmiennych
Reguły nazewnictwa zmiennej to -
- Nazwy zmiennych muszą zaczynać się od litery lub znaku podkreślenia. 
- Nazwa zmiennej może składać się z cyfr, liter i znaków podkreślenia, ale nie można używać znaków takich jak +, -,%, (,). & itp 
Nie ma limitu rozmiaru dla zmiennych.