My theory on the lack of a main framework with both JS and PHP is that they are both languages designed for the web already. Because they have so much included, frameworks are mostly just arranging what’s already there which creates a low barrier to entry for new frameworks.
With Ruby, Rails prepares the language for the web. The framework is needed as an enabler. Same with Python and Django.
Nothing to back this up other than personal experience though. Just a theory.
It does now and it’s definitely the closest thing to a ubiquitous framework for PHP that we’ve had available.
Maybe it will turn out to have the staying power that Rails has had with Ruby and become “the way”? For a long time there were nearly as many PHP frameworks as JS.
With Ruby, Rails prepares the language for the web. The framework is needed as an enabler. Same with Python and Django.
Nothing to back this up other than personal experience though. Just a theory.