PHP – променливи 
Тема 2 
11.12.14 1
Съдържание 
 1.Променливи.Видове 
 2. Enviroment variables -"променливи 
на средата" и на сървъра 
 3. “Изпращане” на променлива 
11.12.14 2
Променливи 
 Едно от най-големите предимства на PHP е възможността 
му да работи с променливи; 
 Променливата е “склад, хранилище”. Ние поставяме “неща” 
в нашия склад, и затова можем да ги ползваме, 
обработваме-променяме. 
 Нещата които искаме да складираме са числа и текст. 
 Променливата се състои от две "части“ 
 Име; 
 и Стойност. 
 Обръщайки се към името на променливата можем да й 
присвоим нова стойност или да получим достъп до 
текущата. 
11.12.14 3
PHP -Променливи 
особености 
 не се декларират предварително; 
 създаването на променливата става в 
момента, в който и присвоявате стойност; 
 не е не необходимо да се указва типа на 
информацията – string, int, float и др. – 
PHP само определя типа. 
 името на променливата винаги е 
предшествано от знак за долар - $. 
11.12.14 4
Пример 
 ../uroci/t2/ex21.php 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta 
name="generator" content="PSPad editor, www.pspad.com"> 
<title>ex21</title> 
</head> 
<BODY> 
<?php 
$ime="Иван Петров"; 
echo "<h1>$ime</h1>"; 
?> 
</BODY> 
<HTML> 
11.12.14 5
Свързване на променливи 
 ../uroci/t2/ex22.php 
<?php 
$txt1="Hello World!"; 
$txt2="What a nice day!"; 
echo $txt1 . " " . $txt2; 
?> 
//Резултата би трябвало да бъде: Hello World! What a nice day! 
11.12.14 6
Вградени функции за тип на 
променлива 
- определят типа на дадена променлива 
 is_bool() - връща истина ако променливата е булева 
(истина/лъжа); 
 is_float() - връща истина ако променливата съдържа 
число с плаваща запетая; 
 is_integer() - връща истина ако променливата е цяло 
число; 
 is_string() - връща истина ако променливата е низ от 
символи; 
 is_array() - връща истина ако променливата е масив; 
 is_object() - връща истина ако променливата е обект; 
11.12.14 7
2. Enviroment variables -"променливи на 
средата" info.php, и на отворете сървъра в браузъра – 
си. 
променливи, поддържани от сървъра и PHP интерпретатора, 
описващи Използвахме Ще видите текущото най-две състояние важната от тези на промливи информация връзката и - 
характеристиките 
за PHP 
на двете страни в нея - клиент и сървър. 
../uroci/t2/ex23.php 
 <?php phpinfo(); ?> 
инсталацията, както и всички създадени в текущата 
връзка променливи на средата на PHP и сървъра. 
Изписаното в левите полета на таблицата 
представляват имената на променливите, а в дясната 
част - стойностите им. 
HTTP_USER_AGENT и $HTTP_REFERER, с чиято 
помощ открихме с какъв браузър посетителят разглежда 
страницата и от къде е дошъл на нея. 
Събирането и анализирането на подобни данни е 
безкрайно полезно за всеки web разработчик. 
Така можете да научите кой сайт ви праща най- 
много посетители и да организирате рекламната си 
стратегия, наблягайки на него. 
Полезно е, също и да следите кои от страниците 
в сайта ви се посещават повече и предизвикват по- 
голям интерес, така че да наблегнете на тях и на 
подобен вид съдържание в по-нататъчното изграждане 
на сайта. 
11.12.14 8
../uroci/t2/ex24.php 
<HTML> 
<HEAD> 
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> 
<TITLE>Здравей!</TITLE> 
</HEAD> 
<BODY> 
<h2> 
<?php 
$data=date("d-m-Y"); 
$chas=date("H:i:s"); 
$browser=$_SERVER['HTTP_USER_AGENT']; 
$ref=$_SERVER["REMOTE_PORT"]; 
$user_ip=$_SERVER['REMOTE_ADDR']; 
$forw=$_SERVER['HTTP_X_FORWARDED_FOR']; 
$serv=$_SERVER['SERVER_SOFTWARE']; 
$rem_host=gethostbyaddr($user_ip); 
$comp_name=$_ENV['USERDOMAIN']; 
echo ("<b>Здравейте,<br><br>Добре дошли в сайта на PC<i 
style='color:red '> $comp_name</i> !</b><br>"); 
echo ("Сега е $chas часа, по моя часовник, на $data, а Вие 
дойдохте тук от port:($ref) с $browser<br>"); 
echo ("Вашето IP е $user_ip($forw) - $rem_host. <br><p>Поздрави: 
<br>$serv"); 
?></h2> 
</BODY> 
</HTML> 
11.12.14 9
Описание на използваните глобални 
променливи в примера 
 $HTTP_USER_AGENT -винаги съдържа идентификационната 
информация на браузъра; 
 $HTTP_REFERER - съдържа URL на мястото, от което идва 
посетителят; 
 $REMOTE_ADDR - съдържа в себе си IP адреса на 
посетителя; 
 $HTTP_X_FORWARDED_FOR - съдържа в себе си IP адреса 
на посетителя зад прокси сървър; 
Използването на последните две описани 
променливи на средата е полезно, когато 
давате достъп до чувствителна информация 
или по една или друга причина е важно да 
знаете кой точно е отсреща. 
Така можете да ограничите достъпа до 
 Когато множество потребители се намират зад едно или повече 
прокси сървъри. 
сайта си на хора, които нарушават добрия тон в 
него или да подсигурите сигурността му при e-commerce 
 $SERVER_SOFTWARE - информация за сървърния софтуер - 
версия на сървъра и операционна система. 
приложения. 
11.12.14 10
3. “Изпращане” на 
променлива 
 Методи: 
 POST; 
 GET; 
 и чрез cookies; 
11.12.14 11
Пример 
../uroci/t2/index.html 
<html> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8"> 
<meta name="generator" content="PSPad editor, 
www.pspad.com"> 
<title></title> 
</head> 
<body> 
<p>Здравейте! Моля попълнете следната информация : <br> 
<form action="show.php" method="post"> 
Вашето име : <input type="text" 
name="ime" /><br> 
Възраст : <input type="text" 
name="godini" /><br> 
<input type="submit" 
value="Изпрати!" /> 
</form></p> 
</body> 
</html> 
../uroci/t2/show.php 
<?php 
//show.php 
$a=$_POST['ime']; 
$b=$_POST['godini']; 
echo "Здравейте, $a и вие сте на $b 
години!"; 
?> 
11.12.14 12
URL кодиране 
 файл.php? 
име1=стойност1&име2=стойност2&име3 
=стойност3; 
 show.php?ime=Иван_Петров&godini=25; 
 echo '<a href="show.php?'.urlencode 
(ime=Иван Петров&godini=25) 
11.12.14 13

B2 t2 variables

  • 1.
    PHP – променливи Тема 2 11.12.14 1
  • 2.
    Съдържание  1.Променливи.Видове  2. Enviroment variables -"променливи на средата" и на сървъра  3. “Изпращане” на променлива 11.12.14 2
  • 3.
    Променливи  Едноот най-големите предимства на PHP е възможността му да работи с променливи;  Променливата е “склад, хранилище”. Ние поставяме “неща” в нашия склад, и затова можем да ги ползваме, обработваме-променяме.  Нещата които искаме да складираме са числа и текст.  Променливата се състои от две "части“  Име;  и Стойност.  Обръщайки се към името на променливата можем да й присвоим нова стойност или да получим достъп до текущата. 11.12.14 3
  • 4.
    PHP -Променливи особености  не се декларират предварително;  създаването на променливата става в момента, в който и присвоявате стойност;  не е не необходимо да се указва типа на информацията – string, int, float и др. – PHP само определя типа.  името на променливата винаги е предшествано от знак за долар - $. 11.12.14 4
  • 5.
    Пример  ../uroci/t2/ex21.php <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title>ex21</title> </head> <BODY> <?php $ime="Иван Петров"; echo "<h1>$ime</h1>"; ?> </BODY> <HTML> 11.12.14 5
  • 6.
    Свързване на променливи  ../uroci/t2/ex22.php <?php $txt1="Hello World!"; $txt2="What a nice day!"; echo $txt1 . " " . $txt2; ?> //Резултата би трябвало да бъде: Hello World! What a nice day! 11.12.14 6
  • 7.
    Вградени функции затип на променлива - определят типа на дадена променлива  is_bool() - връща истина ако променливата е булева (истина/лъжа);  is_float() - връща истина ако променливата съдържа число с плаваща запетая;  is_integer() - връща истина ако променливата е цяло число;  is_string() - връща истина ако променливата е низ от символи;  is_array() - връща истина ако променливата е масив;  is_object() - връща истина ако променливата е обект; 11.12.14 7
  • 8.
    2. Enviroment variables-"променливи на средата" info.php, и на отворете сървъра в браузъра – си. променливи, поддържани от сървъра и PHP интерпретатора, описващи Използвахме Ще видите текущото най-две състояние важната от тези на промливи информация връзката и - характеристиките за PHP на двете страни в нея - клиент и сървър. ../uroci/t2/ex23.php  <?php phpinfo(); ?> инсталацията, както и всички създадени в текущата връзка променливи на средата на PHP и сървъра. Изписаното в левите полета на таблицата представляват имената на променливите, а в дясната част - стойностите им. HTTP_USER_AGENT и $HTTP_REFERER, с чиято помощ открихме с какъв браузър посетителят разглежда страницата и от къде е дошъл на нея. Събирането и анализирането на подобни данни е безкрайно полезно за всеки web разработчик. Така можете да научите кой сайт ви праща най- много посетители и да организирате рекламната си стратегия, наблягайки на него. Полезно е, също и да следите кои от страниците в сайта ви се посещават повече и предизвикват по- голям интерес, така че да наблегнете на тях и на подобен вид съдържание в по-нататъчното изграждане на сайта. 11.12.14 8
  • 9.
    ../uroci/t2/ex24.php <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> <TITLE>Здравей!</TITLE> </HEAD> <BODY> <h2> <?php $data=date("d-m-Y"); $chas=date("H:i:s"); $browser=$_SERVER['HTTP_USER_AGENT']; $ref=$_SERVER["REMOTE_PORT"]; $user_ip=$_SERVER['REMOTE_ADDR']; $forw=$_SERVER['HTTP_X_FORWARDED_FOR']; $serv=$_SERVER['SERVER_SOFTWARE']; $rem_host=gethostbyaddr($user_ip); $comp_name=$_ENV['USERDOMAIN']; echo ("<b>Здравейте,<br><br>Добре дошли в сайта на PC<i style='color:red '> $comp_name</i> !</b><br>"); echo ("Сега е $chas часа, по моя часовник, на $data, а Вие дойдохте тук от port:($ref) с $browser<br>"); echo ("Вашето IP е $user_ip($forw) - $rem_host. <br><p>Поздрави: <br>$serv"); ?></h2> </BODY> </HTML> 11.12.14 9
  • 10.
    Описание на използванитеглобални променливи в примера  $HTTP_USER_AGENT -винаги съдържа идентификационната информация на браузъра;  $HTTP_REFERER - съдържа URL на мястото, от което идва посетителят;  $REMOTE_ADDR - съдържа в себе си IP адреса на посетителя;  $HTTP_X_FORWARDED_FOR - съдържа в себе си IP адреса на посетителя зад прокси сървър; Използването на последните две описани променливи на средата е полезно, когато давате достъп до чувствителна информация или по една или друга причина е важно да знаете кой точно е отсреща. Така можете да ограничите достъпа до  Когато множество потребители се намират зад едно или повече прокси сървъри. сайта си на хора, които нарушават добрия тон в него или да подсигурите сигурността му при e-commerce  $SERVER_SOFTWARE - информация за сървърния софтуер - версия на сървъра и операционна система. приложения. 11.12.14 10
  • 11.
    3. “Изпращане” на променлива  Методи:  POST;  GET;  и чрез cookies; 11.12.14 11
  • 12.
    Пример ../uroci/t2/index.html <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title></title> </head> <body> <p>Здравейте! Моля попълнете следната информация : <br> <form action="show.php" method="post"> Вашето име : <input type="text" name="ime" /><br> Възраст : <input type="text" name="godini" /><br> <input type="submit" value="Изпрати!" /> </form></p> </body> </html> ../uroci/t2/show.php <?php //show.php $a=$_POST['ime']; $b=$_POST['godini']; echo "Здравейте, $a и вие сте на $b години!"; ?> 11.12.14 12
  • 13.
    URL кодиране файл.php? име1=стойност1&име2=стойност2&име3 =стойност3;  show.php?ime=Иван_Петров&godini=25;  echo '<a href="show.php?'.urlencode (ime=Иван Петров&godini=25) 11.12.14 13