PHP — нұсқалар арасындағы айырмашылық

Түйіндемесі өңделмейді
;<tt>$_SESSION</tt> (уст. <tt>$HTTP_SESSION_VARS</tt>)
: Осы сессияларда болады.
 
 
 
 
=== Объективтi-хабар программалау===
PHP толық қолдауы тiлдiң бесiншi болжамында енгiзiлетiн [[объективтi-хабар программалау| объективтi-хабар]] кең мүмкiндiктер қолдайды.
 
PHPға [[класс(программалау ) | класс ]] <tt>class</tt> сөзi Ключевоесi арқылы жариялайды. Кластың әдiс және өрiстерi протецтед (<tt>private</tt>) бүркеме қорғал қалған (<tt>public</tt>, үндемеу бойыншаға) белгiлi бола алады.PHP [басқалықты (программалау )| басқалық] |ООП-шының барлық үш негiзгi тетiктерiн қолдайды, [[полиморфизм (программалау ) | полиморфизм]] [[мұрагер болу (программалау ) | мұрагер болу]] және (аналық класс <tt>extends</tt> кластың атынан кейiн сөзi Ключевоесi арқылы көрсетiледi). [[интерфейстер (ООП ) | интерфейс]] (<tt>implements</tt> көмегiмен сәйкес тұрғызылады) сүйейдi. [[Финализатор ақырғы]] хабарлау рұқсат етiледi, [[абстракт методтардың | абстракт методы]] және класстар. Класстар [[#Көптiк мұрагер болу| Көптiк мұрагер болу (программалау ) мұрагер болу]] сүйемейдi, дегенмен класс бiрнеше интерфейстер iске асыра алады.Аналық сыныптың әдiстерге қарап сөйлеуi үшiн маңызды сөздi қолданылады<tt>parent</tt>.
 
PHPға сыныптар арнайы әдiстердiң қатарларын алады ({{lang-en|Magic methods}}), жаңа бастап жүрген екi астын сызу символысы. Ерекше атап өтуге болады [[конструктор (программалау )|конструктор]] (<tt>__construct()</tt>, 5.0 конструкторға дейiн болжамдардағы әдiс, аттас сыныппен қызмет көрсетедi) және [[деструктор]] (<tt>__destruct()</tt>), сонымен бiрге оқудың әдiстерi(<tt>__get()</tt>) және жазулар (<tt>__set()</tt>), жинаулар (<tt>__sleep()</tt>) және жазулар (<tt>__wake()</tt>), көбейтулер (<tt>__clone()</tt>) тағы басқалар. Бұл әдiстер болып табылады солқылдақ аспап жеткiлiктi: объекттiң мiнез-құлығының маңызды өзгерiсi қол жеткiзу мүмкiн олар қайта анықтай қол жеткiзу мүмкiн.
 
Класстың даналары <tt>new</tt>, өрiстерге қарап сөйлеу және объекттiң әдiстерiне сөзi Ключевоесi арқылы жасалады '''<tt>-></tt>''' операторды қолданып өндiрiп алады.
Әдiстер сыныптың мүшелерiне рұқсат үшiн олардың iшiнен айнымалы <tt>$this</tt> қолданылады.
<source lang='php'>
class C1 extends C2 implements I1, I2
{
private $a;
protected $b;
 
function __construct($a, $b)
{
parent::__construct($a, $b);
$this->a = $a;
$this->b = $b;
}
 
public function plus()
{
return $this->a + $this->b;
}
/* ............... */
}
 
$d = new C1(1, 2);
echo $d->plus(); // 3
</source>
Объекттер сiлтеме бойынша PHPның бесiншi болжамынан бастай берiледi:
<source lang='php'>
class a
{
public $color = 'red';
}
 
$a = new a();
echo $a -> color; // red
$b = $a;
$b -> color = 'blue';
echo $a -> color; // blue
</source>
{{anchor|Nekudotayim}}
'''«Paamayim Nekudotayim»''' немесе жай ғана « екi есе шығын қос нүкте». Бағдарламашы [[лексеманы (информатика ) | лексема]] бұл қолдана тұрақтыларға қарай алады, статикалық немесе класстардың артық тиелген қасиеттер немесе әдiстерiне.
Класс, бағдарламашы элементтерге үндеуде осыған сырттай бұл класс атты пайдалануы керек.
«Paamayim Nekudotayim» екi есе шығын қос нүктенiң белгiсi үшiн оғаш сөз тiркесiмен сырттай қарағанда андағайлай алады. Andi және Zeev болжамның Zend Engineнiң 0.5 (қай PHP3ке кiрдi), жасаулары алайда, уақытында таңдады<ref> Сияқты, бұл бинарлық форма [[C++]] тiлден алып пайдаланды көру кеңiстiгiнiң жөн-жобасы '', конструкция олардан, ''квалификациялы атпен '' тұрақтылар осы жағдайда.</ref> тап солдың белгiсi. «Paamayim Nekudotayim» шындығында демек «екi есе шығын қос нүкте» ивритте. Бұл белгiлер PHPның өңдеуi уақыт бойы бiр деге бұлжымады.<ref>[http://php.net/manual/en/language.oop5.paamayim-nekudotayim.php http://php.net/manual/en]</ref>
<source lang='php'>
<?php
class MyClass {
const CONST_VALUE = ' Тұрақтының мәнi';
}
// Қолдануы:: сыныпты тану тыс
echo MyClass::CONST_VALUE;
?>
</source>
 
 
[[Санат:Бағдарламалық жасақтама]]
Тіркелгісіз қатысушы