~/talk

PHP's type system dissected?

Talkat PHP UK Conference 2023 · 2023-02-14..02-16· [php]
slides:none on file

Explains what each PHP type actually means, shows the engine representation as a zend type structure and C checks for unions/intersections, and gives the concrete subtyping algorithm (quantifier order change that took months to get right). Demonstrates DNF types, userland limits, and ten type juggling contexts with exact surprising behaviors (string increment, array keys, comparisons). Claims strict_type declare only affects function/property scalar coercion and argues that narrow scope breaks expectations; proposes function types and generics as practical next steps.

AI-written summary · about

  1. 0:00PHP's type system
  2. 1:08Type fundamentals
  3. 13:15Internal type representation
  4. 14:00Subtyping and LSP
  5. 22:49Subtyping rules with examples
  6. 28:10PHP's type juggling contexts
  7. 44:05Increment/decrement quirks
  8. 52:30Exit coercion behavior
  9. 54:56Strict types limitations
  10. 55:20Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.