Вебмастер / PHP / PHP5 A >> PHP տվյալների տիպեր

PHP տվյալների տիպեր


Ключевые слова
PHP5  Փոփոխականներ  Webmaster  Developer  ՊՀՊ5  Մարտիրոսյան Հովհաննես  script  սկրիպտ  օպերատոր  տվյալների տիպեր  BOOLEAN  INTEGER  base_convert()  FLOAT  REAL  DOUBLE  STRING  ARRAY  NULL  OBJECT  RESOURCE  TRUE  FALSE  Heredoc  print_r()   

Автор: Մարտիրոսյան Հովհաննես Просмотров 3122
Опубликовано: 2012-12-12 01:10:45

PHP լեզվի տվյալները ունեն 8 տիպեր։ Առաջիկայում մենք կծանոթանանք նրանցից 6-ի հետ։ Իսկ մնացած երկու տիպերը պահանջում են համեմատաբար ավելի խոր գիտելիքներ տվյալ բնագավառում։ Մինչ առաջ անցնելը ՀԻՇԵ'Ք և ՄԻ' ՄՈՌԱՑԵՔ, որ PHP-ն ( PHP5 ) թույլ տիպիզացված լեզու է և անզգույշության կամ ոչ բավարար գիտելիքների պատճառով ձեր տվյալները սկրիպտի աշխատանքի ընթացքում կարող են փոխել իրենց տիպը և արդյունքում դառնալ անցանկալի և տարօրինակ հետևանքների պատճառ։ Տիպերը ստուգելու և նրանց հետ մանիպուլիացիաներ կատարելու համար կան բացմաթիվ ֆունցիաներ, որոնց օգնությամբ կարող եք խուսափել սխալներից։

BOOLEAN

Բուլյան տիպը ունի ընդամենը երկու արժեք. ճիշտ է (TRUE) և սխալ է (FALSE): Սրանք դասական (Արիստոտելյան) տրամաբանությունից առաջացած բուլյան մաթեմատիկայի 0 և 1 արժեքներն են։

<?php
$a = 2;
$b = 30;
$c = ($a < $b);// $c-ին տալիս ենք ճիշտ արժեք։ $a(2)-իրականում փոքր է $b(30)-ից
var_dump($c);//մեզ  արդեն ծանոթ var_dump ֆունկցիան վերադարձնում է այսպիսի արդյունք՝ 
//bool(true), որն է բուլյան ճիշտ 
$c = ($a > $b);// $c-ին տալիս ենք սխալ արժեք։ $a(2)-իրականում մեծ չէ $b(30)-ից
var_dump($c);//var_dump ֆունկցիան վերադարձնում է այսպիսի արդյունք,  bool(false)
// Եթե մենք var_dump-ի փոխարեն օգտվենք echo օպերատորից
// էկրանին կտպվի դատարկ տող, այսինքն՝ ոչինչ:
?>

FALSE և TRUE բառերը պետք է գրել առանց ապոստրիֆների այլապես նրանք կվերածվեն տողերի։

<?php
$G = false;
var_dump($G);//bool(false)
$G = "true";
var_dump($G);//string(4) "true"
$G = 'true';
var_dump($G);//string(4) "true"
?>

INTEGER

Ամբողջ թիվ տիպը իրենից ներկայացնում է ցանկացած ամբողջ, ոչ կոտորակային թիվ։ -100, 64, 1, 7895, -889665
Այս թվերը կարող են լինել նաև ութնահիմնային կամ տասնվեցահիմնային։

124 - բնական տասնահիմնային 124
0174 - ութնահիմնային 174, որը հավասար է տասնահիմնային 124-ին
0x7C - տասնվեցահիմնային 7C, որը հավասար է տասնահիմնային 124-ին
 ութնահիմնային - (oct)  0100
տասնահիմնային - (dec) 100
տասնվեցահիմնային - (hex) 0x100
(oct)64 = (dec)52 = (hex)34
base_convert() ֆունցիայի օգնությամբ կարելի է ստեղծել հարբեր հիմնային թվեր, 
սակայն այն դուրս է մեր այս նյութի շրջանակներից։

<?php
$int = 033;
var_dump($int); //int(27)
$int = -0703;
var_dump($int); //int(-451)
$int = 33; 
var_dump($int); //int(33)
$int = -9083;
var_dump($int); //int(-9083)
$int = 0xf33;
var_dump($int); //int(3891)
$int = -0xc6a631;
var_dump($int); //int(-13018673)
?>

Եկե'ք փորձ կատարենք բուլյան տիպին-ին գումարենք, հանենք ամբողջ թիվ։

<?php
$a = false; // boolean
$b = true; // boolean
$c = 20; // integer
echo $a + $c; // 20
echo $b + $c; // 21
echo $b - $c; //-19
// Տեսնելով  մաթեմատիկական օպերատորնրին PHP մշակիչը false-ին վերածում է 0-ի, իսկ
// true-in` 1-i
$d = $c - $a; // $d-in վերագրում ենք 20-false արժեքը։ 
var_dump($d); // int(20)
$d = $c.$a; // Տեսնելով  տողային կոնկատենացիայի օպերատորնրին PHP-ն $d-ին 
	// կտա տողային արժեք։
var_dump($d); // string(2) "20" 
$d = $c.$b; 
var_dump($d); // string(3) "201"
?>

FLOAT

Իրական թիվ։ Այս տիպը ունի նաև այլ անվանումներ՝ REAL, DOUBLE: FLOAT տիպում ամբողջը մասից անջատվում է կետով այլ-ոչ թե ստորակետով։
109.05, 1.0, -786.90, -888.0008989,3.0E+20, 3.09E+20:

<?php
var_dump(1.202020);// float(1.20202)
var_dump(-5.5);// float(-5.5)
var_dump(-5E+10); // float(-50000000000)
$e= 7*(1/7);
var_dump($e); // float(1)
$e = 3 * 1.0;
var_dump($e); // float(3)
?>

STRING

Տողեր։ Սա մեզ արդեն բավականին ծանոթ տիպ է։ STRING տիպը գրվում է եզակի կամ կրկնակի ապոստրիֆների մեջ կամ heredoc ուղղագրությամբ։ Եթե տողի մեջ չկան փոփոխականներ կամ հատուկ նշաններ ցանկալի է օգտվել եզակի ապոստրիֆներից։ Heredoc ուղղագրությանը կանդրադառնանք հետագայում եթե դրա կարիքը զգացվի։ Տողերի արտածման համար կան նաև այլ ֆունկցիաներ, որոնք թույլ են տալիս արտածել ֆորմատավորված տեքստ։ Կարճ ասած տողերը (STRING) սիմվոլների հաջորդականություն են՝ պարփակված ապոստրիֆների մեջ։


<?php
$a = 134567; // INTEGER
$b = 0.345; // FLOAT
$c = $a.$b; // Կոնկատենացիայի շնորհիվ մենք կստանանք STRING
var_dump($c); // string(11) "1345670.345"
$string = "PAC";
$int = 2;
$B = $int.$string;
echo $B; // 2PAC
var_dump($B); // string(4) "2PAC"
?>

<?php
$a = 'ABCDEFG';
$a0 = $a[0];
var_dump($a0);// string(1) "A"
$a1 = $a[1];
echo $a1; // B
echo $a[2]; // C
// Տողի սիմվոլները արտածեցինք ըստ իրենց դիրքի։ Համարակալումը սկսվում է 0-ից
//Չշփոփել զանգվածների հետ 
?>

ARRAY

Զանգվածներ։ Այս տիպին կարելի է բնորոշել որպես մեկ փոփոխականի տակ հավաքված բազում փոփոխականներ, շատ պարզունակ տվյալների բազա կամ համակարգված տվյաներ։ Մեկ զանգվածը կարող է մեկ այլ զանգվածի մասը լինել և ստեղծել բազմաճյուղ հիերարխիկ կառուցվացք։
Եկե'ք մեկ անվան (փոփոխականի) տակ միավորենք մեր մտերիմների անունները։ Կօգտվենք նաև մեզ անծանոթ print_r() ֆունկցիաից։

<?php
$anun[] = 'Gurgen';
$anun[] = 'Simon';
$anun[] = 'Mariam';
$anun[] = 'Gevorg';
print_r($anun); // Array ( [0] => Gurgen [1] => Simon [2] => Mariam [3] => Gevorg )
?>

Դյուրըմբռնելի տեսք տալու համար մեր նորաստեղծ զանգվածը տեղադրենք < pre>... < /pre> HTML տեգերի մեջ։

<?php
$anun[] = 'Gurgen'; $anun[] = 'Simon'; $anun[] = 'Mariam'; $anun[] = 'Gevorg';
echo '<pre>';
print_r($anun);
echo '</pre>';
/* Ստանում ենք ներքևի կոդը
Array
(
    [0] => Gurgen
    [1] => Simon
    [2] => Mariam
    [3] => Gevorg
)
*/
?>

Մեր զանգվածը ունի չորս էլեմենտ, որոնք կազմված են բանալիներից և նշանակություններից։ Բանալիներին քանի-որ մենք արժեքներ չէինք տվել, նրանք դրվել են ավտոմատ կերպով սկսած 0-ից։ Բանալիներին կարելի է տալ միայն INTEGER կամ STRING արժեք։
ECHO-ի կամ PRINT-ի օգնությամբ կարելի էկրանին արտածել զանգվածի էլեմէնտը։
echo $anun[3]; print ($anun[2]);


array() կոնստրոկցիայի միջոցով կարելի է ստեղծել զանգված։

<?php
$qaxaq = array('Երևան',  'Ախթալա', 'Արմավիր', 'Մուշ');
var_dump($qaxaq);
/*
array(4) {
  [0]=>
  string(10) "Երևան"
  [1]=>
  string(12) "Ախթալա"
  [2]=>
  string(14) "Արմավիր"
  [3]=>
  string(8) "Մուշ"
}
*/
?>

Մինչ հաջորդ նյութերում Զանգվածներին մանրամասն ծանոթանալը ստեծեք և փորձեր կատարեք Զանգվածների հետ։

<?php
$A = array( "9" =>'Երևան',  'Ախթալա', 'Արմավիր', 'Մուշ');

$B = array( "20" =>'Երևան',  'ԳԳԳ'  => 'Ախթալա', 'Արմավիր',  "5" => 'Մուշ' , 
	'Գյումրի', "Մոսկվա");

$C = array( "ARM" =>'Երևան',  "RUS" =>'Կրասնոդար',  "GEO" =>'Նինոծմինդա');
?>

NULL

NULL տիպը ունի միայն մի արժեք՝ NULL: NULL տիպ են ստանում այն փոփոխականները
Ա - որոնց արժեք չի վերագրվել։
Բ - որոնց վերագրվել է NULL կոնստանտը։
Գ - որոնք ջնջվել են unset() ֆունկցիայի միջոցով

<?php
$A = NULL;
var_dump($A); // NULL
$A = $A + 0;
var_dump($A);// int(0)
unset($A);
var_dump($A); // NULL
var_dump($Geodezia); // NULL
?>


OBJECT և RESOURCE տիպերին կանդրադառնաք հետագայում։ Իսկ առաջիկայում առավել կծանոթանանք մեր այսօրվա տիպերին, նրանց հետ կատարվող մանիպուլիացիաներին և նրանց հիմնական ֆունցիաներին։

Protected by Copyscape DMCA Takedown Notice Infringement Search Tool