|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
Вопрос больше теоретический. Никак не могу привыкнуть к внезапности php. Предположим есть ClassA который реализует Countable. Вполне логично что создав его экземпляр A = new ClassA() мы в последствии вызывали бы метод count() следующим способом: A->count() Но ведь нет, не тут то было: count(A) наш путь :) В связи с этим у меня вопрос почему? Это вот такое исключение сделано для интерфейсов библиотеки только, или можно нарисовать свою и при помощи неё перехватывать стандартные функции ядра (говоря грубо "перегружать" всё от "+" до ".")? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2017, 12:38 |
|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
Или просто относится к этому факту как к очередной "магии" (набору костылей и подпорок) в php и принять как есть. Да, это такая же библиотека как и остальные, но включенная в "поставку". Нет, это не такая же библиотека как и остальные, но включенная в "поставку". Она "магическая" :) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2017, 13:04 |
|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
CodError, http://php.net/manual/en/class.countable.php Classes implementing Countable can be used with the count() function. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2017, 15:52 |
|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
Ну т.е. логики не искать? Просто вот запомнить и всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2017, 15:54 |
|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
CodErrorПредположим есть ClassA который реализует Countable. Вполне логично что создав его экземпляр A = new ClassA() мы в последствии вызывали бы метод count() следующим способом: A->count() Но ведь нет, не тут то было: count(A) наш путь :)Ну почему, A->count() тоже работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2017, 16:35 |
|
Библиотека SPL и перехват функций ядра
|
|||
---|---|---|---|
#18+
BarloneCodErrorПредположим есть ClassA который реализует Countable. Вполне логично что создав его экземпляр A = new ClassA() мы в последствии вызывали бы метод count() следующим способом: A->count() Но ведь нет, не тут то было: count(A) наш путь :)Ну почему, A->count() тоже работает. Нет ну в ином случае уж совсем было бы "весело". ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2017, 13:26 |
|
|
start [/forum/topic.php?fid=23&tid=1460710]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
51ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 372ms |
total: | 510ms |
0 / 0 |