PHP OOP-де объектінің құрылған соң дереу әдісін шақыру
Бізде Arr класы болсын, ол
сандар массивін сақтайды және getSum әдісі
арқылы осы сандардың қосындысын есептей алады.
Сандардың өздері массив түрінде объектінің конструкторына
беріледі, сонымен қатар add әдісі арқылы
бір-бірден қосуға болады:
<?php
class Arr
{
private $numbers = [];
public function __construct($numbers)
{
$this->numbers = $numbers;
}
public function add($number)
{
$this->numbers[] = $number;
}
public function getSum()
{
return array_sum($this->numbers);
}
}
?>
Arr класын қолдану мысалы:
<?php
$arr = new Arr([1, 2, 3]);
$arr->add(4);
$arr->add(5);
echo $arr->getSum(); // шығарады 15
?>
Кейде барлық қажет сандарды объектінің құрылған сәтінде береміз, содан кейін дереу олардың қосындысын тапқымыз келуі мүмкін:
<?php
$arr = new Arr([1, 2, 3]);
echo $arr->getSum(); // шығарады 6
?>
Егер біз объектпен басқа ешқандай манипуляциялар
жасауды жоспарламасақ, онда жоғарыдағы кодты қысқарақ
жазуға болады: объектіні құрып, дереу оның getSum
әдісін шақыруға болады:
<?php
echo (new Arr([1, 2, 3]))->getSum(); // шығарады 6
?>
<?php
class StringProcessor
{
private $str = '';
public function __construct($text)
{
$this->str = $text;
}
public function append($text)
{
$this->str .= $text;
return $this;
}
public function getValue()
{
return $this->str;
}
public function getLength()
{
return strlen($this->str);
}
}
?>
Бұл класпен келесідей жұмыс жасалды делік:
<?php
$str = new Str('aaa');
$str->append('bbb');
$str->append('ccc');
echo $str->getLength();
?>
Бұл кодты класс орнында шақыру арқылы қайта жазыңыз.