[Duvida] Por qual motivo PHP é tão mau falado mesmo hoje com o PHP 8?

Olá a você que está lendo esse post, desenvolvo a mais de 5 anos, principalmente com o PHP que é minha main language.

Comecei no PHP 5.4 (o coisa ruim que era), depois atuei com o PHP 7.4 (uma delicinha em minha humilde opinião) e por ultimo com o PHP 8.

Conforme fui apredendendo e evoluindo, fui passando por varios frameworks como Laravel, CodeIgniter, Zend Framework, Syphony até Cake PHP já meti a cara kkkkk.

E sim já desenvolvi fontes em PHP que hoje em dia olhando pro passado fico me perguntando que diabos eu quis dizer aqui...

Mas sempre fui vendo um certo hate do pessoal sobre PHP muita das vezes causadas pelo trauma dos legados de PHP 5 e 4.

Ai fica minha duvida o hate do pessoal é simplismente porque ficaram presos no passado e ainda acham que estamos na era maluca que foi os PHP 5 e 4?

Se perguntarem em minha opinião é aquilo PHP é uma otima linguagem assim como qualquer outra... se ela coloca comida na mesa é boa.

se ela coloca comida na mesa é boa

Conheço várias pessoas que trabalharam em linha de montagem de fábricas diversas (ou seja, "apertar parafuso" o dia inteiro). Sem juízo de valor nem desmerecimento, pois é um trabalho digno e honesto, e segundo elas "pagava as contas". Mas todas diziam que o trabalho em si era horrível.

Atenção: não estou dizendo que programar em PHP é igual a apertar parafuso. Isso tudo é apenas pra dizer que "ser bom" e "colocar comida na mesa" são duas características diferentes e não necessariamente relacionadas. Vc pode ter algo que é apenas um ou outro. Ou ambos. Ou nenhum. No meu entendimento, uma coisa não é consequência da outra.

Até porque a história mostra que o melhor tecnicamente nem sempre é o mais usado. Pelo contrário, muita coisa que fez sucesso tinha várias falhas técnicas, mas uma série de outros fatores (marketing, hype, foi a primeira, teve patrocínio/lobby de grandes players, etc) fez com que fosse amplamente adotado.

E não estou dizendo que tudo que faz sucesso é ruim, e nem que tudo que era "o melhor" fracassou. Estou apenas constatando que isso aconteceu - e ainda acontece - bastante na nossa área.


Dito isso, já tivemos alguns debates sobre PHP. Sugiro ler todos, pois se eu for responder, vou acabar repetindo muita coisa que já foi dita ali:

Por fim, vale dizer que toda linguagem possui qualidades e defeitos. Não podemos ser fanboys que acham tudo perfeito, e nem haters que acham que tudo é ruim.

concordo com o que voce disse. acho que me expressei mal o que eu quis dizer é exatamente isso o pessoal nem chegam a usar a linguagem e já saem falando asneira e isso cria uma bolha na cabeça de novatos onde se ficam presos em JS ou Python. Não que JS ou Python são linguagens ruins (na minha cabeça essa questão até nem existe foi como você mesmo disse toda lang tem suas limitações, malefícios e benefícios e está tudo certo).

trabalho com php mais de 20 anos, em projetos pequenos e absurdo de grande. e uma coisa que percebi é que nao existe linguagem ruim ou fraca, o que existe é programador que nao sabe usar os recursos que a linguagem oferece.

ja tabalhei com java, pyton, c# e entre outras, e ja vi cada absurdo implementado que eu poderia dizer que a linguagem é isso e aquilo.

Mais uma opinião pessoal, o php é uma linguagem boa, confortável, rápido de implementar qualquer demanda e nao deixa a desejar perante outras linguagens.

programador ruim nao torna a liguagem ruim. mesma coisa vc nao saber dirigir e falar que ferrari é ruim pra o tal.

enfim, faça o melhor sempre, indiferente a ferramenta que esta em sua mãos.

Mexo com PHP faz alguns anos já. Passei por esses frameworks, como o Laravel. Hoje passo longe.

Qualquer linguagem é ruim se o programador também for.

Eu já falei sobre esse assunto aqui também.

exatamente isso.

Ai fica minha duvida o hate do pessoal é simplismente porque ficaram presos no passado e ainda acham que estamos na era maluca que foi os PHP 5 e 4?

Hate é puramente por popularidade.

PHP, Ruby, Java, Javascript, Python, C#, [insira qualquer linguagem aqui]

Todas essas linguagens são hateadas por pessoas de outras comunidades simplesmente porque não são a sua.

Pessoalmente eu já dei muito hate em cima de Python, JS e C# simplesmente porque meu gosto pessoal me afastou dessas linguagens, mas não porque as linguagens enm si são ruins

E claro pagando bem eu desenvolvo em qualquer linguagem, mesmo que não goste tanto dela

exatamente isso que eu penso.

É mau falado por que é modinha falar que php é ruim, lento ou cheio de gambiarra, a linguagem em si é poderosíssima, fácil de aprender mesmo sem fonte arrisco dizer que é uma das se não a linguagem voltada pra web mais rápida atualmente, mas o hype é javascriptu e paitun.

Existe uma frase, "Os erros do passado não definem quem você é", mas que mesmo assim ainda há quem te julgue sem conhecer suas mudanças e seus pontos positivos.

Acho que o PHP foi um caso deste que acabou ficando extremamente famoso na época em que possuia falhas grotescas e lentidão (5 e 4 como você diz), e acabou pegando na boca do povo até hoje. Nenhuma dessas pessoas que julgam a linguagem pela sua antiga versão sequer tocaram nas updates mais atuais, e isso é bem triste pois se tornou uma linguagem simplesmente fantástica.

Eu nem to falando de colocar comida na mesa, digo em questão de estruturação e organização mesmo, o framework Laravel é um belo exemplo disso.

Desconhecimento, preconceito, sei lá. Sou programador PHP, e trabalho quase que 100% com Laravel. O Laravel 11 está um absurdo de bom junto com o PHP 8.3. Comecei a estudar PHP em 2014, acho que era o 5.6 na época. Quando se está aprendendo faz sim muita merda, igual em qualquer outra linguagem.

Hoje tenho sistemas que dono de software house elogia e quando pergunta a linguagem e eu digo que é PHP/Laravel/Livewire faz cara de nojinho.

Não dá pra entender. PHP é vida

Sim possuo alguns projetos pessoais um SaaS para as empresas de terceiro setor, um sistema de ordem de serviço intuitivo e um sistema usando a Google Vision A.I para detecção de plágio de imagens para empresas a qual querem multar sites que usam suas fotos indevidamente, já tive depoimentos de professores usando isso só que para obter as referências das fotos nos TCC ou teses de alunos que não colocaram e perderam nota. e tudo isso feito usando php 7.4 laravel e codeigniter.

cara eu trabalho com laravel meio q ta quase virando uma linguagem em sikkkk, mas cara, quando vc vai pro frame (existem pessimos) vc vêr melhor o trabalho do php

Nossa! Quanta besteira aqui nos comentários! Quem ta falando asneira ai nem deve ter se aprofundado em PHP.

O melhor do PHP agora é o Laravel, as ferramentas ajudam você criar qualquer coisa com qualidade e muuuuita rapidez.

Pra falar mal de PHP, tem que no mínimo TRABALHADO com as ultimas versões, e com uma equipe que sabe o que está fazendo. Senão, nem abra a boca.

Pelo que vejo o trauma em sua maioria não é pela linguagem mais pela aberturas que ela deixar o desenvolvedor fazer e pelas gambiarras de antigamente.

Tem também aqueles que falam mal mas nunca usuaram, outros que só falam mal para engajar, e o outros o pior dos casos programou mas não usou a linguagem como um todo ou simplesmente lhe falta técnica em programação no geral.

Nem entro mais nessa discução é perda de tempo, as ferrementas estão ai cabe a você usar ou não e escolher o momento certo.

Porque as pessoas não entendem do assunto e querem opinar sobre o que não sabem. Também é ociosidade, existem poucas vagas no mercado e o cara fica desocupado o dia inteiro, entra na pesquisa de vagas e aparece PHP nos requisitos, daí fica chorapingando na internet.

A minha resposta é com base em uma análise pessoal e não é um fato, mas que acredito que faz sentido.

Eu acho que o motivo de o PHP ser tão mal falado é pela própria linguagem mesmo. Infelizmente ela não tem um desempenho bom ao nível de outras linguagens, principalmente antes da versão 7, também não consegue ser poderosa, novamente comparando com outras linguagens, ela tem muitas limitações, como por exemplo ela nunca seria uma boa opção pra fazer um jogo, uma grande plataforma, fazer um aplicativo mobile, um SPA, entre outros.

A estrutura da linguagem também não é segura em questão de desenvolvimento, já que você geralmente só vai notar um problema quando o aplicativo está em execução, enquanto linguagens como o C# conseguem te ajudar antes mesmo de rodar a aplicação, até a evitar referências nulas. Não ter isso para um projeto grande se torna um enorme problema.

Outra questão, novamente comparando as outras linguagens, é como as coisas são feitas em PHP e maneira como você deve fazer, tudo pode ser feito de uma maneira "errada", que não é considerada boa quando se trata de grandes projetos. A sensação de quem trabalha em grandes projetos, quando olha pro PHP é como se fosse: Porque isso é assim? E porque tem que ser feito dessa maneira?

Resumindo, o PHP é como se fosse uma linguagem mais amadora e limitada, que por esse motivo geralmente só é vista em pequenos projetos, que geralmente só foi escolhida pela equipe ou desenvolvedor não saber uma linguagem mais apropriada. Geralmente você olha para a maioria das linguagens e meio que tudo funciona de uma maneira melhor.

Concordo em partes com o que você disse. em minha opinião uma lang especializada em algo acaba sendo "superior" a uma lang "pato". ela voa, nada e anda. Mas não faz nada direito. pode ser ate ignorância de minha parte pois já usei outras lang como JS, Python e C# mas nunca me aprofundei tanto quanto fiz com o PHP
Isso é verdade, porém uma lang "pato" só pode ser isso se ela não for boa em nada, porque o pato faz tudo, mas não é bom em nada. Já se você fizer 3 coisas e for bom em 3, não pode ser chamado de um pato. E infelizmente algo que ajuda o PHP a ser tão mal falado é que mesmo ele sendo focado em Web, ele não consegue ser um destaque de uma boa linguagem para Web e novamente só é usado em projetos pequenos. Citando linguagens que você mesmo mencionou, na Web por exemplo, a linguagem mais indicada é o JavaScript e ele ainda é uma boa opção para mobile, outra que é muito boa para projetos grandes também na Web é o C#, que consegue ser até mais performático que o JavaScript, porém é indiscutível que ele tem uma comunidade menor e bem menos opções que o JavaScript para web, mas mesmo assim ainda consegue ser uma opção melhor que o PHP. Basicamente vem muito disso, sempre que você pega bons profissionais e os colocam pra discutir uma boa stack em cada área, o PHP nunca está incluso, porque sempre tem algo bem melhor pra ser usado e infelizmente não parece ser possível que isso mude. Já que teria que refazer toda a linguagem e como ela construída, mas aí se tornaria outra e não seria PHP. Mas no fim algo fundamental para todo bom desenvolvedor é saber que a linguagem que você mais utiliza tem defeitos e as vezes tentar contornar isso ou partir, tentar outra para continuar evoluindo.
O PHP 5.x era lento? Sim mas não tanto! Na verdade, a maioria dos que reclamam da performance dele, no máximo desenvolveram sistemas com 2, 3, 5 usuários simultâneos e a performance NUNCA foi um problema real. O PHP 7 foi um divisor de águas em termos de performance, e já foi lançado há 8 anos! Quem fala em lentidão do PHP no mínimo está vivendo de passado.
Está bem equivocado, quanto menor a quantidade de usuários, menos o problema de performance fica evidente, ou seja, com 5 usuários o problema não seria perceptível. Outro ponto equivocado é o de que "o desempenho do PHP NUNCA foi um problema real". Nós temos um baita exemplo real, que é o Facebook, que foi desenvolvido em PHP e foi necessário eles criarem a linguagem Hack para ir tentando resolver os problemas da linguagem. Muita gente acha que o PHP 7 tornou o PHP bom e isso não aconteceu, quem diz isso é porque não entende o que faz. Um ponto super polêmico é que geralmente quem defende o PHP é iniciante ou não sabe, ou não é bom em uma outra linguagem. Você nunca vai ver desenvolvedores experientes ou grandes empresas adotando novos projetos em PHP. Uma super polêmica pra finalizar, kkkkk: A filosofia do PHP é que pra funcionar não precisa ser bom e essa pegada que se mantém até hoje vem do seu próprio criador.
Acho que não leu direito. A performance nunca foi um problema real para a maioria dos usuários, que desenvolveram sistemas/sites pequenos. Para grande escala, sim, o PHP 5.x era lento. E sim, o PHP 7 foi um divisor de aguas sim. Também não entendo quando se diz que o PHP não é bom. Porquê, poderia argumentar seus motivos? Acho um pouco ofensivo inclusive quando diz que quem defende PHP é iniciante, afinal, tenho mais de 20 anos de experiência com programação, e acho que o PHP é bom sim, no seu devido lugar. Não sou fanático pela linguagem, mas ela me atende super bem em diversos projetos até hoje.
Sim, mas realmente para pequenos projetos não vai ser um problema. Porém isso não o torna bom. Para alguém que tem um Celta e faz mudanças levando somente uma geladeira ou um sofá pode dizer que ele é ótimo, porém isso não é fato quanto mais nós entramos no ambiente profissional, em que o mínimo é um caminhão de mudança e nesse meio não dá pra dizer que um Celta é bom. O PHP 7 só é um divisor de águas dentro do próprio PHP, isso não o fez ser bom e relevante quando se compara com outras linguagens. Como eu tinha dito, além do iniciante quem defende PHP é alguém que não sabe ou não é bom em outra linguagem. Bom, se você já tem 20 anos de experiência, já era pra ser totalmente capaz de dizer porque o PHP não é bom. Geralmente, mas não sempre, quem tem 20 anos de experiência já passou por vários projetos grandes e já se aprofundou em pelo menos mais uma linguagem.
Vinícius, creio que você esteja com um olhar enviesado a respeito do PHP. Tenho projetos em PHP com mais de 30.000 usuários simultâneos... Já tive pico de quase 1M em alguns. Projetos grandes e extremamente complexos (contabilidade, folha de pagamento, factoring, etc...)! Se precisasse poderia ser até 10 milhões, depois de certo tamanho na maioria das vezes é questão de escalabilidade de infra (conheço muitos sistemas enormes em Ruby, que é reconhecidamente lento). PHP é extremamente rápido (leia sobre Swoole, Octane etc...) e de infra barata! Sobre novas empresas grandes e PHP: O PicPay, Wikipedia, Sistemas novos de campanhas do Facebook, Tumblr... são em PHP, se pesquisar um pouquinho você vai achar fácil, principalmente fora do Brasil. Abraço
Bom, dizendo novamente mais uma vez, nós estamos falando de **porque o PHP é tão mal falado** e isso se deve a ter outras linguagens muito melhores. Você pode ter 10 milhões de usuário simultâneos no PHP, mas poderia ter um desempenho bem melhor com outra linguagem, além de outros pontos. Conseguir, não é sinônimo de ser bom. Você pode fazer uma viagem pra bem longe com um **gol quadrado de 1900 e pouco** nos dias de hoje, mas ele não seria a melhor opção pra isso. Basicamente, tem várias coisas que o PHP não consegue fazer e o que ele consegue, tem várias linguagens que conseguem fazer bem melhor e é por isso que ele é **tão mal falado**. Sobre as empresas, eu tinha mencionado sobre uma **boa equipe** e empresas grandes. Se uma equipe realmente grande, disser que de todas as opções o PHP seria a melhor escolha em questão de linguagem (não orçamento e outras coisas), certamente tem algo errado. E algo que eu posso complementar é: - Você nunca vai ver empresas como **Google**, **Microsoft**, **Apple** e várias outras escolhendo o PHP como uma opção para novos projetos. - Wikipédia já não deveria nem ter sido comentado como exemplo, porque é basicamente só texto. - O Facebook hoje em dia não usa mais o PHP de fato, usa o Hack, que foi criado pra tentar resolver os problemas do PHP, já que não era viável reconstruir a rede social totalmente em outra linguagem. Mas só com isso, temos a certeza de que o PHP não seria uma opção pro Facebook se ela já tivesse toda a infraestrutura de hoje, ao invés da escolha que teve quando o Mark iniciou o projeto. Hoje a Meta tá bem vinculada ao Hack/PHP, por conta dessa decisão. - O PicPay eu sei que **não** é um bom exemplo, não sei se você já utilizou a API deles, mas ele geralmente tem uns problemas estranhos, e algo **super básico** que é a codificação e decodificação de URL, eles não tem. Se você mandar algo como %20, a API deles quebram e se você fala com o suporte técnico deles (desenvolvedores/programadores) é bem estranho, não parece terem a experiência que você espera de uma empresa próxima do tamanho do PicPay. **Algo importante é sabermos que a linguagem que escolhemos sempre vão ter problemas e precisamos reconhecer isso. Isso não significa que não podemos usar ou que ela não funciona, mas precisamos ter a humildade de saber isso.** E pra finalizar, **opinião 100% pessoal** é que o PHP é uma linguagem muito com a filosófia de **pra funcionar não precisa ser bom**, isso inclusive vem do seu próprio criador.
**"Está bem equivocado, quanto menor a quantidade de usuários, menos o problema de performance fica evidente, ou seja, com 5 usuários o problema não seria perceptível."** **"Sim, mas realmente para pequenos projetos não vai ser um problema. Porém isso não o torna bom..."** Eu falei sobre a carga de uso e velocidade por causa desse seu comentário acima. Nele, você diz que os problemas de Performance não existem porque os sistemas PHP trabalham com poucos usuários, o que não é verdade. **"mas poderia ter um desempenho bem melhor com outra linguagem..."** Claro, você está dizendo o óbvio, Vinícius. Mas quando vamos escolher uma linguagem para desenvolvimento levamos em consideração muitas coisas além de performance: Tempo de desenvolvimento, custos de infra, disponibilidade de mão de obra... O PHP é uma ferramenta poderosa como backend de aplicações WEB. Ainda sobre performance, se comparar o PHP compilado (com Swoole) e outras linguagens que competem no mesmo ambiente WEB (C#, JS (Node), Python, até GO) verá que o PHP vai muito bem! **"Você nunca vai ver empresas como Google, Microsoft, Apple e várias outras escolhendo o PHP como uma opção para novos projetos."** E quem disse que as tecnologias que essas empresas usam são necessariamente as melhores para o meu negócio? Sua afirmação não faz sentido para 99% das empresas. **"Algo importante é sabermos que a linguagem que escolhemos sempre vão ter problemas e precisamos reconhecer isso. Isso não significa que não podemos usar ou que ela não funciona, mas precisamos ter a humildade de saber isso."** Exatamente, eu concordo com você. **"E pra finalizar, opinião 100% pessoal é que o PHP é uma linguagem muito com a filosófia de pra funcionar não precisa ser bom, isso inclusive vem do seu próprio criador."** É importante lembrar que ele não foi o único desenvolvedor do PHP; ele apenas desenvolveu as primeiras versões (acho que 1 e 2). Estamos atualmente na versão 8 do PHP, e a visão dele não define o que a comunidade tem feito com a linguagem desde então.
É importante reconhecer os problemas das linguagens que utilizamos, um exemplo **fortíssimo**, é que a linguagem desenvolvida pela Microsoft é o C# e nem por isso ela afirma que ela é boa para tudo, o novo Office vai ser desenvolvido em RUST justamente porque é uma linguagem que tem um desempenho bem melhor que o C# e o desempenho do C# já é muito bom, mas ainda fica pra trás. O problema é que geralmente a comunidade do PHP não aceita que a linguagem tem muitos problemas e que **infelizmente**, a maioria das linguagens são sempre **bem** melhores que ela, o que consequentemente acaba tornando ela uma linguagem considerada **ruim** e é por isso que sofre muito **hate**.
Teve um problema de interpretação. Eu não disse que "os problemas de desempenho não existem porque os sistemas PHP trabalham com poucos usuários". Se você reparar, nesse comentário eu estou respondendo outro em que o **eliaseas** comenta: "Na verdade, a maioria dos que reclamam da performance dele, no máximo desenvolveram sistemas com 2, 3, 5 usuários simultâneos [...]". O que não faz sentido, logo que com 5 usuários não tem como o problema de desempenho ser perceptível, **então porque alguém que só tem 5 usuários reclamaria do desempenho do PHP?** ------------------------------------------------------------------- Sobre a escolha da linguagem, realmente tem várias coisas que são levadas em consideração e é por esse motivo que eu mencionei lá que não incluia o orçamento e outros pontos e sim somente a linguagem. Porque as vezes acontece, principalmente no ambiente dos negócios, mas isso deixa mais claro ainda quando não é a melhor opção, quando você escolhe uma linguagem porque o custo que vai ter com ela é mais barato, fica evidente que não é por ela e sim pelo seu custo. Por exemplo, se o banco que oferece mais desempenho é o X, porém é pago e você escolhe o Y porque ele é gratuito. Isso não torna o Y melhor ou bom, você escolheu ele pelo preço, se o outro fosse gratuito, é ele que seria escolhido. Foi mais por uma falta de escolha. Assim como por exemplo, uma empresa pode optar por escolher Python pra fazer um site somente porque eles já tem desenvolvedores Python e não valeria a pena financeiramente contratar desenvolvedores JavaScript. **Eu por exemplo, não aprenderia totalmente uma nova stack só pra fazer algo, se for possível fazer no que eu sei, mas eu preciso ter a ciência de que não vai ser a melhor opção.** Um último exemplo pra fixar bem, alguém que tem a stack .NET e C# pode escolher o Xamarin ou MAUI pra fazer um aplicativo mobile e pode ser uma boa opção, mas saber que tem opções melhores. E de novo **O PHP é tão mal falado** porque fica bem atrás de várias outras linguagens, não somente por ele só ter foco na web, mas por até tendo o foco na web, outras conseguirem fazer melhor e estamos falando da **linguagem** não preço de hospedagem, disponibilidade de mão de obra, etc.
**"...mas isso deixa mais claro ainda quando não é a melhor opção..."** Entendo seu ponto de vista, mas **a melhor opção** tem que levar em conta os fatores inclusos na expectativa de quem vai escolher. Sobre o exemplo do banco, ser um banco gratuito ou não, não o faz melhor ou pior automaticamente, você sabe disso. Por falar em outro tipo de banco, trabalhei com MSSQL e Oracle por vários anos (tenho algumas certificações), e vi a perda de mercado que esses tiveram enquanto se recusavam a se adequar ao mercado Web. Os bancos "gratuitos" tomaram boa parte do mercado. MSSQL e Oracle são ferramentas incríveis! Mas isso não faz PgSQL e MySQL (sei que tem pago também) ferramentas que eu possa falar mal sem levar em consideração algum objetivo, ou dizer que são piores em suas versões gratuitas, isso tudo **DEPENDE** de muitas outras perguntas. Na empresa temos projetos em várias linguagens, a maioria em C#, Node e PHP (Python usamos mais em funções Lambda). Muitas vezes acabamos optando pelo PHP para novos projetos, considerando muitas outras coisas além de preço de hospedagem. Os argumentos que vejo para falarem **mal do PHP** em sua maioria não se sustentam, ou usam de forma incorreta. Não é uma linguagem perfeita, como todas as outras, mas está longe de ser ruim
Opa, estou notando que tá ficando complicado de entender. A confusão que está sendo feita é que está sendo levado em consideração outras coisas além da linguagem, como habilidade do profissional, disponibilidade do mercado, preços, etc. Mas esses outros pontos não entrariam na conversa pra falar sobre a linguagem. **A conversa não seria sobre escolha levando em consideração outros fatores, mas somente a própria linguagem**, espero que agora tenha dado pra entender. -------------------------------- Tentando te esclarecer sobre outro ponto. O exemplo da escolha do banco de dados gratuito que usei é para uma escolha em que um banco era bom, outro era ruim ou não tão bom, mas era escolhido somente por ser gratuito. Não mencionei nenhum tipo de banco de dados, justamente porque o MySQL é gratuito e é um **ótimo** banco de dados, então não poderia ser usado como exemplo. Então você ter mencionado sobre MSSQL, Oracle, PgSQL, MySQL não fez muito sentido. ---------------------------------------- Os argumentos sobre o porque o PHP ser ruim, geralmente são extramente bem construídos e a habilidade de passar isso geralmente depende do quanto o desenvolvedor é experiente e aprofundado nesse meio. Quanto mais habilidoso, melhor sabe mostrar os pontos negativos dele e aí o negócio piora. Geralmente o PHP só é defendido por quem não tem muita experiência em outras linguagens e então não sabe conseguir analisar isso, como por exemplo tipagem, quem desenvolve em PHP praticamente não lida com tipagem, então não entende muito disso, pelo menos não como quem lida todo dia e não sabe enxergar os malefícios só de não ser fortemente tipada. Tem muitas e muitas outras coisas, e esse foi somente 1 exemplo. Está ficando cansativo e se não deu pra entender tudo que foi dito até agora, vai ser complicado fazer entender. Pra te ajudar a entender, lê os comentários do **maniero** nessa publicação: https://www.tabnews.com.br/maniero/14b178ef-84e1-43e6-ac15-7ce169fed32f Ele é alguém bem experiente e um ótimo profissional, vai saber te apontar os problemas bem melhor que eu.
Eu entendi quando você citou que queria falar somente da linguagem, e não tem problema comparar somente assim. Mas no meio dos seus argumentos, por vezes misturou outras coisas, por isso toquei nos outros pontos, pra deixar bem claro. Vim do Java, sei bem o que é trabalhar com tipos, inclusive gosto bastante de Java, mas não uso nos projetos atuais justamente por causa de motivos diversos que não a linguagem em si. Obrigado pelo link, vou ler com calma em outro momento. [Edit: Li a publicação uma vez. Infelizmente ele não citou os pontos, creio que deva fazer isso posteriormente]
Kkkkkk, tentei usar eles pra exemplificar e realizar uma abstração, como pode ter reparado até usei um "gol quadrado" no exemplo, mas não se trata de carros. Consigo usar alguns trechos da fala do **maniero** que ajudam a expressar o que eu quero dizer quando o PHP não é uma boa linguagem e sempre geralmente tem uma opção melhor: > "Debater tecnologia não deveria, mas é algo religioso. Em PHP costuma ser pior. Por alguma razão que eu não sei (ahhh, eu sei, mas é melhor não falar) tende a dar mais problemas que outras tecnologias. Vem seguindo de JS, Python, Java e depois começa ficar menos relevante, as discussões raramente acontecem. Eu vou só falar uma coisa, essas tecnologias costumam ter mais fanboys (PHP é a dos mais radicais), então você não pode fazer nenhuma crítica que você vira hater para eles. E aqui começamos entender o mundo PHP." ------------------------------ > "A linguagem PHP não é boa e isso até o criador admite. É direito de qualquer um discordar, mas quem costuma estudar linguagens sabe disso e não tem o que discutir. Ela é cheia de falhas, e muitas delas são mais recentes. A maioria das novidades foram mal pensadas, e existem mais para dizer que tem o que as concorrentes têm, mas nas outras faz mais sentido e forma mais bem pensadas. Não tem como consertar certos problemas sem quebrar a compatibilidade. Não tem uma mágica que fará a linguagem ser melhor. Especialmente isso não acontecerá pela maneira como o processo é conduzido. Ela recebe novos recursos, ser bom é outra questão. Ela está evoluindo, melhorando é algo mais pontual." > "Me preocupa e diz muito sobre a comunidade que diz que versões mais novas consertou a linguagem. Aclro que alguma melhora aconteceu, mas teve pioras também e as pessoas não enxergam assim. Então naõ tem o que discutir, se a pessoa não vê ela acha que não existe." -------------------------------- > "Eu uso PHP como ela foi concebida. Não uso da forma como as pessoas usam hoje em dia porque tem ferramentas melhores para usar desta forma, ferramentas que foram feitas para usar desta forma. **Então hoje PHP tenta ser o que ela não nasceu para ser, e isso é ruim.** > Só é pior usar para algo que não seja backend web, onde até o criador da linguagem me disse pessoalmente que isso é errado." > "A linguagem continuará do jeito que está, evoluindo sem muito critério, as pessoas continuarão usando, e se você gosta dela não tem que se preocupar com nada. Se você já não desistiu então não tem porque fazer depois. **Só quem faz análises rasas acha que o passado do PHP é problema e agora está bom.**" > "PHP é das linguagens mais high profile que existem, e é responsável por tudo o que é, para o bem ou para o mal. Se ela não fosse tão visível ela não seria tão próspera. Me desculpe, mas essa visão eu tenho que discordar veementemente." > "O PHP é útil, não há dúvidas disso, caso contrário eu não usaria. **Mas para fazer sites simples.** > O PHP funciona para algo mais complexo que isso, não há dúvidas disso, caso contrário não teria tanta gente usando. Mas não é o mais adequado nessas circunstâncias, pelo menos não na maioria dos casos." > "**PHP é um framework com uma linguagem acoplada para produzir páginas web. Se quer mais que isso, tem soluções mais robustas, poderosas e eficientes. Por isso é estranho rodar um framework em cima de outro.**"
Vi que você comentou que leu e ele não citou os pontos, deixa eu ajudar, citando só uma das que diz isso: > "A linguagem PHP não é boa e isso até o criador admite. É direito de qualquer um discordar, mas quem costuma estudar linguagens sabe disso e não tem o que discutir. **Ela é cheia de falhas, e muitas delas são mais recentes. A maioria das novidades foram mal pensadas, e existem mais para dizer que tem o que as concorrentes têm, mas nas outras faz mais sentido e forma mais bem pensadas.** Não tem como consertar certos problemas sem quebrar a compatibilidade. Não tem uma mágica que fará a linguagem ser melhor. Especialmente isso não acontecerá pela maneira como o processo é conduzido. Ela recebe novos recursos, ser bom é outra questão. Ela está evoluindo, melhorando é algo mais pontual." > "Me preocupa e diz muito sobre a comunidade que diz que versões mais novas consertou a linguagem. Aclro que alguma melhora aconteceu, mas teve pioras também e as pessoas não enxergam assim. Então naõ tem o que discutir, se a pessoa não vê ela acha que não existe." 1 - Hoje em dia você consegue usar tipos em alguns lugares do PHP, mas não faz muito sentido, não foi bem pensado, não tem o mesmo funcionamento de uma linguagem com tipagem. 2 - O PHP tem `namespaces`, mas novamente não faz muito sentido, ele é mais uma "gambiarra" para "importar" outros arquivos PHP, o que é completamente diferente de outras linguagens. 3 - Você mesmo comentou sobre o Swoole, como se fosse pra compilar o PHP. Apesar de eu acreditar que não é isso que ele faz, também com toda certeza, não funciona da mesma maneira que a compilação de uma linguagem. 4 - Muitos frameworks e ferramentas são construídas pra fazer o que o PHP não veio pra fazer, como tentar usar pra criar SPA. Tem muito mais além disso, ou seja, além dos seus próprios problemas, a maioria das coisas no PHP é ele tentando fazer menos do que ele veio pra fazer e sim o que as outras linguagens fazem, só que nunca é como as outras, sempre fica como algo mal feito que não era pra ter esse funcionamento. Até inclusive coisas da linguagem que não estão em outras, são assim, como chamar variáveis com o valor de outra variável, isso é algo bem sem sentido, se pensar bem, sempre que alguém faz isso, estava querendo usar um array.
Achei os argumentos bem superficiais: **1. "Não tem o mesmo funcionamento que uma linguagem com tipagem":** As linguagens se dividem em categorias diferentes quanto ao uso de tipos (dinâmica, fraca, forte). Cada tipo traz prós e contras. Eu não posso dizer que uma linguagem é melhor ou pior que outra por usar uma tipagem de tal modo. Isso **Depende** muito do que eu quero em um projeto. Quanto ao uso de tipos em PHP, ele trabalha como outras linguagens dinâmicas que não tem tipagem estática e forte: Javascript, Python, Ruby, etc... Inclusive, após a versão 7 você pode usar tipos estritos. **2. "Gambiarra para importar (namespaces)"** Cara, você já usou namespaces no PHP? Nunca me deu nenhum tipo de dor de cabeça. Inclusive muitas linguagens populares nem trabalham com namespace, somente módulos. **3. "não funciona da mesma maneira que a compilação de uma linguagem (sobre Swoole)"** Eu sei como funciona, e realmente não é a mesma coisa que uma linguagem compilada, mas isso não faz diferença para o propósito ao qual foi feito, pois no final eu tenho um desempenho absurdo sem precisar de trabalhar diretamente com concorrência e paralelismo no código. Eu tenho até outros argumentos melhores a esse respeito, mas iríamos entrar em outro assunto. **4 - "Muitos frameworks e ferramentas são construídas pra fazer o que o PHP não veio pra fazer, como tentar usar pra criar SPA."** Esse argumento é o mais raso de todos, cheguei a rir aqui rsrsrs. A maioria das linguagens de backend pra Web tem frameworks para "simular" SPA, e isso não é um problema. Eu não uso. Quando uso PHP, é pra API Web mesmo. ------------------------------ Amigo, vou parar meus comentários por aqui. Agradeço pela conversa. Desejo sucesso a você! Abraço!
Nenhuma das respostas que deu para os 4 pontos fez sentido, só mostrou que realmente tenta fazer o que as outras fazem e realmente não funciona como deveria. Todas e principalmente a do namespace mesmo, se aplica muito ao "Pra funcionar não precisa ser bom". Deixo por fim essas conclusões que se aplicam ao seu último comentário: > "Debater tecnologia não deveria, mas é algo religioso. Em PHP costuma ser pior. Por alguma razão que eu não sei (ahhh, eu sei, mas é melhor não falar) tende a dar mais problemas que outras tecnologias. Vem seguindo de JS, Python, Java e depois começa ficar menos relevante, as discussões raramente acontecem. Eu vou só falar uma coisa, essas tecnologias costumam ter mais fanboys (PHP é a dos mais radicais), então você não pode fazer nenhuma crítica que você vira hater para eles. E aqui começamos entender o mundo PHP." ------ > "[...] Então hoje PHP tenta ser o que ela não nasceu para ser, e isso é ruim." ------- > "PHP é um framework com uma linguagem acoplada para produzir páginas web. Se quer mais que isso, tem soluções mais robustas, poderosas e eficientes. Por isso é estranho rodar um framework em cima de outro."

Falando de forma simplificada e resumida (todo o resto já falaram e explicaram nos outros comentários), como um bom hater de PHP, eu afirmo (opinião) que o motivo são os legados.

Eu já tive que fazer algumas manutenções em sites feitos inteiramente em PHP (isso mesmo, tudo junto e misturado na tentativa de fazer um SPA).

Sou dev Javascript, mas atualmente estudo Java, já estudei F#, passei por Python e tentei um pouco de C#. Tenho muita familiaridade com Dart, gostei muito dessa linguagem.

E porque hatear o PHP? Apenas pela resenha. A zoeira mesmo é o que fala mais alto. A era do PHP ruim já passou.

Motivos pro hate? Tem! Sintaxe do PHP é horrível, passa muito a sensação de uma linguagem feita na gambiarra. PHP é uma linguagem pra fazer CRUD. Dá pra fazer algumas gambiarras e fazer alguns jogos e processamento de dados, mas a linguagem vai dificultar sua vida e o desempenho deixa a desejar. Não porque a linguagem é ruim, mas porque ela não foi feita pra isso. PHP é pra você fazer uma API que será consumido por qualquer outro diabo que tenha TCP. Para fazer um enorme monolito ou uma sistema distribuído em micros serviços, não tem o que reclamar. Talvez a performance atrapalhe na escalabilidade, mas isso é facilmente contornado.

Outro ponto que não vou falar sobre que é defeito porque desconheço, mas vou deixar essa minha dúvida pra vocês. PHP tem aceleração ou otimização por GPU, JIT ou AOT igual as demais linguagens/framework?

E cadê a segurança de tipos do PHP? Até o javascript que é inseguro tem um superset pra corrigir, e quanto ao PHP? Vão depender do HACK? Rodar PHP na HHVM da Meta?

boa parte da culpa é do joel spolsky, que flameou php e rails por anos