PHP performance hints.

Содержание

Слайд 2

Передача строк по ссылке


Передача строк по ссылке

Слайд 3

Передача строк по ссылке

function test1($str) {
$chCounter = 0;
for ($count = 0;

Передача строк по ссылке function test1($str) { $chCounter = 0; for ($count
$count < strlen($str); $count++) {
if ($str[$count] == '4') $chCounter++;
}
return $chCounter;
}

Слайд 4

Передача строк по ссылке

function test2(&$str) {
$chCounter = 0;
for ($count = 0;

Передача строк по ссылке function test2(&$str) { $chCounter = 0; for ($count
$count < strlen($str); $count++) {
if ($str[$count] == '4') $chCounter++;
}
return $chCounter;
}

Слайд 5

Передача строк по ссылке

Передача строк по ссылке

Слайд 6

Циклические ссылки


Циклические ссылки

Слайд 7

Циклические ссылки в структурах объектов

Циклические ссылки в структурах объектов

Слайд 8

Циклические ссылки в структурах объектов

unset($var1);

Циклические ссылки в структурах объектов unset($var1);

Слайд 9

Циклические ссылки в структурах объектов

unset($var1);

Циклические ссылки в структурах объектов unset($var1);

Слайд 10

Циклические ссылки в структурах объектов

Циклические ссылки в структурах объектов

Слайд 11

.= оператор

.= оператор

Слайд 12

.= оператор и обработка больших строк

$str = '';
while ($condition) {
   ...
   $str

.= оператор и обработка больших строк $str = ''; while ($condition) {
.= $something;
}

Слайд 13

.= оператор и обработка больших строк

$str = '';
while ($condition) {
   ...
   $str

.= оператор и обработка больших строк $str = ''; while ($condition) {
.= $something;
}

Слайд 14

.= оператор и обработка больших строк

$str = '';
while ($condition) {
   ...
   $str

.= оператор и обработка больших строк $str = ''; while ($condition) {
.= $something;
}

Слайд 15

.= оператор и обработка больших строк

$str = '';
while ($condition) {
   ...
   $str

.= оператор и обработка больших строк $str = ''; while ($condition) {
.= $something;
}

Слайд 16

.= оператор и обработка больших строк

$str = '';
while ($condition) {
   ...
   $str

.= оператор и обработка больших строк $str = ''; while ($condition) {
.= $something;
}

Слайд 17

.= оператор и обработка больших строк

$substrings = array();
while ($condition) {
...
$substrings[]

.= оператор и обработка больших строк $substrings = array(); while ($condition) {
= $something;
}
$str = implode($substrings);

Слайд 18

Неэффективность serialize()/unserialize()


Неэффективность serialize()/unserialize()

Слайд 19

Неэффективность serialize()/unserialize()
array(134, 'test stri\'ng', array('float test', 0.0348), 456)
=>
a:4:{i:0;i:134;i:1;s:12:"test stri'ng";i:2;a:2:{i:0;s:10:"float test";i:1; d:0.034799999999999997601918266809661872684955596923828125;}i:3;i:456;}

Неэффективность serialize()/unserialize() array(134, 'test stri\'ng', array('float test', 0.0348), 456) => a:4:{i:0;i:134;i:1;s:12:"test stri'ng";i:2;a:2:{i:0;s:10:"float test";i:1; d:0.034799999999999997601918266809661872684955596923828125;}i:3;i:456;}

Слайд 20

Неэффективность serialize()/unserialize()
array(134, 'test stri\'ng', array('float test', 0.0348), 456)
=>
a:4:{i:0;i:134;i:1;s:12:"test stri'ng";i:2;a:2:{i:0;s:10:"float test";i:1; d:0.034799999999999997601918266809661872684955596923828125;}i:3;i:456;}
array(134, 'test stri\'ng',

Неэффективность serialize()/unserialize() array(134, 'test stri\'ng', array('float test', 0.0348), 456) => a:4:{i:0;i:134;i:1;s:12:"test stri'ng";i:2;a:2:{i:0;s:10:"float
array('long test', 34823734), 456)
=>
a:4:{i:0;i:134;i:1;s:12:"test stri'ng";i:2;a:2:{i:0;s:9:"long test";i:1; i:34823734;}i:3;i:456;}

Слайд 21

Ручной “method inlining”


Ручной “method inlining”

Слайд 22

Замена объектов массивами


Замена объектов массивами
Имя файла: PHP-performance-hints..pptx
Количество просмотров: 115
Количество скачиваний: 0