Ну почему же странный?
но он переменную $b в данном случае, никак не использует
$b = 'dd';
$obj->dd;
$b = 'dd';
$obj->$b;
melkij@melkij:~$ php -d opcache.enable_cli=on -d opcache.opt_debug_level=0x10000 /tmp/op.php
$_main: ; (lines=8, args=0, vars=2, tmps=6)
; (before optimizer)
; /tmp/op.php:1-7
L0 (2): NOP
L1 (5): V3 = NEW 0 string("a")
L2 (5): DO_FCALL
L3 (5): ASSIGN CV0($obj) V3
L4 (6): V6 = ASSIGN CV1($b) string("dd")
L5 (6): T7 = FETCH_OBJ_R CV0($obj) V6
L6 (6): FREE T7
L7 (7): RETURN int(1)
PHP Notice: Undefined property: a::$dd in /tmp/op.php on line 6
melkij@melkij:~$ php -d opcache.enable_cli=on -d opcache.opt_debug_level=0x20000 /tmp/op.php
$_main: ; (lines=7, args=0, vars=2, tmps=2)
; (after optimizer)
; /tmp/op.php:1-7
L0 (5): V2 = NEW 0 string("a")
L1 (5): DO_FCALL
L2 (5): ASSIGN CV0($obj) V2
L3 (6): V3 = ASSIGN CV1($b) string("dd")
L4 (6): T2 = FETCH_OBJ_R CV0($obj) string("dd")
L5 (6): FREE T2
L6 (7): RETURN int(1)
PHP Notice: Undefined property: a::$dd in /tmp/op.php on line 6
For backwards-compatibility reasons, we allow an expression that's just a function call to be written without parens.
В первом случае убедитесь, что -z включено и попробуйте -Z 9
Во втором случае попробуйте наоборот -Z 1, чтобы уменьшить нагрузку на CPU
Транзакции выполняются полностью последовательно на этом уровне
create table foo (i int);
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
start transaction;
select * from foo where i != 5;
insert into foo values (5);
-- до коммита сделайте со второй консоли такие же запросы начиная с set transaction, затем коммит в обеих
-- при корректной реализации второй коммит разрешён не должен быть.
commit;
А Connection refused - отказ операционной системы открыть TCP соединение. firewall вернул reject или никто такой порт не слушает (т.е. база не запущена).