Sinceramente, você está compartilhando do analfabetismo funcional.
A explicação é inválida. Porque uma coisa assíncrona é uma coisa que ocorre "fora de sincronia".
No JavaScript os eventos ocorrem fora de sincronia (porque o código só executa quando o evento ocorre e não quando o código foi definido). O mesmo vale pra Promises.
No PHP, basta verificar as interfaces SplObserver e SplObservable, que garantem a assíncronissidade também no PHP, pois o código só executa após ocorrer o evento de notificação.
Favor não confundir processamento assíncrono com processamento paralelo/concorrente.