За да преминете от обикновени статични страници към създаване на динамични уеб приложения и интерактивни уеб сайтове, е необходимо да се научите да манипулирате данните.
Променливата е контейнер за данни. Когато данните са съхранени в променливи (т.е., когато на променливата е присвоена стойност), те могат да се променят, да се изпечатат в уеб браузъра, да се съхранят в база данни, да се изпратят по електронна поща и т.н.
Ще разгледам най-разпространените типове променливи- числа, стрингове и масиви.В РНР числата се делят на: цели числа и числа с плаваща запетая.Тъй като в РНР няма строг контрол на типа на променливите, обединяването на тези две категории в една група няма да повлияе на програмирането.
В РНР съществуват още един важен тип променливи- обекти, чийто използване значително облекчава писането на код, тъй като обектно-ориентираното програмиране е мощно средство, което икономисва значително време.
За простота ще обединим числата с плаваща запетая и целите числа в една група. Целите числа могат да са положителни и отрицателни, но не могат да бъдат дробни. Числата с десетична запетая (например 1,05)- това са числата с плаваща запетая. Дробните числа се представят като числа с плаваща запетая, тъй като в РНР, единственият начин да се изрази дроб е тя да се конвертира в десетичния си еквивалент (така числото 1 1/4, ще се запише като 1,25).
Променливата е стринг, ако е комбинация от знаци (комбинация от букви, цифри, символи и интервали), затворена в единични или двойни кавички.
Примери за стрингове:
Здравей, свят!
Здравей, $FirstName!”
“1 1/4”
Здравей, свят! Как сте днес?”
“02.44.94”
"1234"
В последния пример превръщаме цяло число в стринг, като го поставяме в кавички.
Примери за неправилно изписани стрингове:
Здравей, свят!
"Попитах: "Как сте?""
В първия пример лисват кавички. Вторият е доста коварен, тъй като ще възникнат проблеми при прочитането на вторите кавички. РНР ще предположи, че стрингът е завършен и следващият текст ще предизвика грешка. За да се предотврати това, кавичките могат да се екранират, като пред тях се постави знакът обратен слаш (\). Тогава стрингът ще придобие вида:
"Попитах:\"Как сте?\""
По този начин даваме инструкция на РНР да разглежда тези кавички като част от стойността на стринга, а не като индикатори за начало и край на стринг.
Екраниране е необходимо за: двойните кавички, знака апостроф (`), обратен слаш (\) и знакът за долар ($).
Двойните кавички имат безспорно преимущество пред единичните. Ако работите с единични кавички, стринга 'Здравей, $FirstName!’ може да предизвика печат на Здравей, $FirstName!, вместо например Здравей, Edelw! (ако преди това на променливата $FirstName сте присвоили стойност Edelw).
Ако екранирате знака за долар в двойните кавички (print "Здравей,\$FirstName!";) отново ще се разпечата името на променливата, а не нейната стойност (Здравей, $FirstName!).
Стрингът и числото обикновено съдържат една стойност, докато масивът може да има назначени няколко стойности. С други думи, в него може да се вложат множество стрингове и/или числа. Разрешено е да се влагат и много масиви в един.
Присвояването на стойност на променлива се осъществява с оператора за присвояване (=). Той присвоява стойност на променливата, която стои вляво от него.
Например:
$number=2; //На променливата $number е присвоена стойност 2
$floating_number= 2,4;
$string="Здравей, свят!";
Стойността на променливата може да се промени. Например:
$number=23;
$number=7;
Сега, ако се разпечата стойността на провенливата, тя вече ще е 7.
Явното присвояване на тип на променливата може да се направи при първото й използване.
Синтаксисът е следния:
$a1=(integer) 2;
$string=(string) "Здравей, свят!";
Незабавно след това, ако желаете, можете отново да промените типа на променливата.
Значението на предефинираните променливи не бива да се подценява, защото, първо: те така или иначе се използват в програмите и второ: може да създадете променлива със същото име, но това ще доведе до възникване на проблеми.
Предефинираните променливи са специален тип променливи, които се използват в програмите на уеб сървъра (например Apache), операционната система с която работи уеб сървъра (Linux, Windows и т.н.) и самите РНР модули. Първите две категории се наричат променливи на обкръжението или променливи на средата, защото описват обкръжението: сървъра, браузъра, конфигурационния файл и т.н. .
На различните сървъри могат да работят различен набор от предефинирани променливи.
С помощта на функцията phpinfo () можете да разберете с какви променливи на средата работи Apache сървъра. Някои от променливите на средата са дефинирани в php.ini файла.
Като примери за променливи на сървърната среда могат да послужат:
$HOSTNAME (името на сървъра),
$OSTYPE (типа операционна система на сървъра).
Предефинирани променливи на сървъра Apache, например са:
$DOCUMENT_ROOT- място за съхранение на файловете на сървъра,
$HTTP_USER_AGENT- определя какъв браузър и каква платформа ползва клиента, който преглежда страницата и др..
Най-често използваната променлива в РНР е $PHP_SELF- еквивалент на името на текущата страница.
Създаването в страниците на променливи с имена, съвпадащи с имената на променливите на средата, може да доведе до непредсказуеми резултати.
Да разгледаме следния пример:
Повече за предефинираните и магически константи: http://php.net
Променливата е контейнер за данни. Когато данните са съхранени в променливи (т.е., когато на променливата е присвоена стойност), те могат да се променят, да се изпечатат в уеб браузъра, да се съхранят в база данни, да се изпратят по електронна поща и т.н.
Синтаксис на променливите
- В РНР всички променливи се означават по следния начин: Знакът за $, последван от името на променливата.
- Името трябва да започва с буква (A-Z, a-z) или със символа (_), може да се състои от произволно количество букви, цифри, знакът за подчертаване или комбинацията им.
- В името на променливата не бива да се оставят интервали. Вместо това, за разделяне на думите се поставя символа за подчертаване.
- $variable и $Variable са две различни променливи.
- На променливите трябва да се дават съдържателни имена и да се прилагат коментари за значението им. По този
начин може да се намали броят на грешките. Например, $LastName е по-добро име за променлива, отколкото $LN.
- В РНР не е необходимо да инициализирате променливата, просто й задавате първоначална стойност.
Типове променливи
Ще разгледам най-разпространените типове променливи- числа, стрингове и масиви.В РНР числата се делят на: цели числа и числа с плаваща запетая.Тъй като в РНР няма строг контрол на типа на променливите, обединяването на тези две категории в една група няма да повлияе на програмирането.
В РНР съществуват още един важен тип променливи- обекти, чийто използване значително облекчава писането на код, тъй като обектно-ориентираното програмиране е мощно средство, което икономисва значително време.
Числа
За простота ще обединим числата с плаваща запетая и целите числа в една група. Целите числа могат да са положителни и отрицателни, но не могат да бъдат дробни. Числата с десетична запетая (например 1,05)- това са числата с плаваща запетая. Дробните числа се представят като числа с плаваща запетая, тъй като в РНР, единственият начин да се изрази дроб е тя да се конвертира в десетичния си еквивалент (така числото 1 1/4, ще се запише като 1,25).
Стринг
Променливата е стринг, ако е комбинация от знаци (комбинация от букви, цифри, символи и интервали), затворена в единични или двойни кавички.
Примери за стрингове:
Здравей, свят!
Здравей, $FirstName!”
“1 1/4”
Здравей, свят! Как сте днес?”
“02.44.94”
"1234"
В последния пример превръщаме цяло число в стринг, като го поставяме в кавички.
Примери за неправилно изписани стрингове:
Здравей, свят!
"Попитах: "Как сте?""
В първия пример лисват кавички. Вторият е доста коварен, тъй като ще възникнат проблеми при прочитането на вторите кавички. РНР ще предположи, че стрингът е завършен и следващият текст ще предизвика грешка. За да се предотврати това, кавичките могат да се екранират, като пред тях се постави знакът обратен слаш (\). Тогава стрингът ще придобие вида:
"Попитах:\"Как сте?\""
По този начин даваме инструкция на РНР да разглежда тези кавички като част от стойността на стринга, а не като индикатори за начало и край на стринг.
Екраниране е необходимо за: двойните кавички, знака апостроф (`), обратен слаш (\) и знакът за долар ($).
Двойните кавички имат безспорно преимущество пред единичните. Ако работите с единични кавички, стринга 'Здравей, $FirstName!’ може да предизвика печат на Здравей, $FirstName!, вместо например Здравей, Edelw! (ако преди това на променливата $FirstName сте присвоили стойност Edelw).
Ако екранирате знака за долар в двойните кавички (print "Здравей,\$FirstName!";) отново ще се разпечата името на променливата, а не нейната стойност (Здравей, $FirstName!).
Масиви
Стрингът и числото обикновено съдържат една стойност, докато масивът може да има назначени няколко стойности. С други думи, в него може да се вложат множество стрингове и/или числа. Разрешено е да се влагат и много масиви в един.
Присвояване на стойност на променлива
Присвояването на стойност на променлива се осъществява с оператора за присвояване (=). Той присвоява стойност на променливата, която стои вляво от него.
Например:
$number=2; //На променливата $number е присвоена стойност 2
$floating_number= 2,4;
$string="Здравей, свят!";
Стойността на променливата може да се промени. Например:
$number=23;
$number=7;
Сега, ако се разпечата стойността на провенливата, тя вече ще е 7.
Явното присвояване на тип на променливата може да се направи при първото й използване.
Синтаксисът е следния:
$a1=(integer) 2;
$string=(string) "Здравей, свят!";
Незабавно след това, ако желаете, можете отново да промените типа на променливата.
Предефинирани променливи
Значението на предефинираните променливи не бива да се подценява, защото, първо: те така или иначе се използват в програмите и второ: може да създадете променлива със същото име, но това ще доведе до възникване на проблеми.
Предефинираните променливи са специален тип променливи, които се използват в програмите на уеб сървъра (например Apache), операционната система с която работи уеб сървъра (Linux, Windows и т.н.) и самите РНР модули. Първите две категории се наричат променливи на обкръжението или променливи на средата, защото описват обкръжението: сървъра, браузъра, конфигурационния файл и т.н. .
На различните сървъри могат да работят различен набор от предефинирани променливи.
С помощта на функцията phpinfo () можете да разберете с какви променливи на средата работи Apache сървъра. Някои от променливите на средата са дефинирани в php.ini файла.
- Отворете текстовия редактор.
- Създайте нов документ.
- Наименовайте го phpinfo.php.
- Въведете:
<?php echo phpinfo (INFO_VARIABLES); ?>
- Съхранете файла.
- Качете го на сървъра.
- Отворете в браузъра.
![]() |
---|
Изход от phpinfo (INFO_VARIABLES) |
Като примери за променливи на сървърната среда могат да послужат:
$HOSTNAME (името на сървъра),
$OSTYPE (типа операционна система на сървъра).
Предефинирани променливи на сървъра Apache, например са:
$DOCUMENT_ROOT- място за съхранение на файловете на сървъра,
$HTTP_USER_AGENT- определя какъв браузър и каква платформа ползва клиента, който преглежда страницата и др..
Най-често използваната променлива в РНР е $PHP_SELF- еквивалент на името на текущата страница.
Създаването в страниците на променливи с имена, съвпадащи с имената на променливите на средата, може да доведе до непредсказуеми резултати.
Да разгледаме следния пример:
- Отворете текстовия редактор.
- Създайте нов файл.
- Дайте наименование на файла magic_const.php
- Въведете:
<?php // PHP константи echo "PHP версия = " . PHP_VERSION . "<br >"; echo "Операционна система на сървъра = " . PHP_OS . "<br >"; echo "Име на файла= " . __FILE__ . "<br >"; echo "Номер на ред= " . __LINE__ . "<br >"; echo "TRUE = ". TRUE . "<br >"; echo "false = ". FALSE . "<br >"; ?>
- Съхранете файла.
- Качете го на сървъра.
- Тествайте в браузъра.
![]() |
---|
Магически константи |
Повече за предефинираните и магически константи: http://php.net
|
Няма коментари:
Публикуване на коментар