O PhpStorm 2021.1 é uma atualização importante que traz a possibilidade de pré-visualizar arquivos PHP e HTML no editor, mais de 20 novas inspeções para ajudar a prevenir bugs, melhorias em todos os subsistemas e programação em pares via Code With Me.
Defina qualquer versão PHP para o projeto sem precisar modificar composer.json
. Isso pode ser útil, por exemplo, para comparar a base de código existente com uma versão mais recente do PHP antes de tomar a decisão de migrar para ela.
Para que fique mais fácil encontrar e alterar as configurações relacionadas ao PHP, movemos essa seção para o nível superior em Settings / Preferences | PHP.
No Editor, há um novo ícone no canto superior direito que abre uma aba para pré-visualizar arquivos dentro do PhpStorm. Funciona com arquivos HTML e PHP.
Abra um arquivo PHP, digite seu código e você poderá ver imediatamente o resultado ao lado dele. Não há necessidade de mudar para outras janelas! Quaisquer alterações nos arquivos CSS e JavaScript vinculados também serão refletidas na visualização.
O PhpStorm usa um interpretador PHP local que é especificado nas configurações do projeto em Settings/Preferences | PHP. Docker e outros interpretadores remotos não são suportados.
Você pode ativar o ícone de pré-visualização ativando pelo menos um navegador em Preferences | Tools | Web Browsers e marcando a caixa de seleção For HTML files.
Você também pode usar o atalho Alt+F2 para abrir uma aba de pré-visualização.
Muitos sistemas de gerenciamento de conteúdo e frameworks permitem que você especifique um prefixo de tabela. Isto é útil quando você usa o mesmo banco de dados em múltiplas aplicações.
Nas versões anteriores, o PhpStorm não faria a integração do banco de dados nesses casos porque as consultas SQL continham marcadores como prefixos.
Agora é possível definir prefixos através do arquivo .phpstorm.meta.php. Saiba mais sobre meta arquivos e como especificar prefixos SQL no artigo de ajuda.
Se uma expressão booleana contiver literais true
ou false
, o PhpStorm pode lhe ajudar a simplificá-la. Use uma correção rápida Alt+Enter para remover as redundâncias e melhorar a legibilidade.
O operador ===
para comparação rigorosa (strict) sempre terá resultado false
se o tipo de um dos operandos não for igual ao tipo do outro.
O PhpStorm irá destacar esses casos, pois eles podem ser, potencialmente, uma fonte de bugs. O PhpStorm leva em consideração todas as informações inferidas por tipo e vai ajudá-lo a encontrar problemas em casos menos óbvios.
Costumava ser uma prática comum adicionar uma atribuição de variável numa chamada de função para imitar um nome de parâmetro.
Com o PHP 8, use Alt+Enter para substituir a atribuição por um argumento nomeado.
Este trecho de código isset($a) ? $a : $b;
tem exatamente o mesmo efeito que $a ?? $b
, então o PhpStorm irá sugerir uma correção rápida Alt+Enter para substituí-lo.
Alguns blocos if
ou else
podem se tornar redundantes depois de mudanças que deixam seu conteúdo igual. O PhpStorm irá oferecer a opção de extrair as partes comuns ou mesclar os blocos.
Pressione Alt-Enter em qualquer `if`
e escolha Invert `if` statement a partir do menu. Isto vai mudar a condição para o seu oposto e fará os ajustes de código necessários para preservar a lógica. Se você é um fã da prática de retorno antecipado (early return), esta ação vai ajudá-lo a refatorar seu código.
Em alguns casos, a barra invertida inicial é redundante em namespaces. O PhpStorm ajuda a determinar onde ela pode ser removida.
Variáveis usadas para chave e valor em loops foreach podem entrar em conflito com nomes de outras variáveis ou parâmetros. O PhpStorm destaca todos os lugares onde esses erros podem ocorrer.
O PhpStorm chama a atenção com um destaque quando as chaves no contexto de uma interpolação de string são redundantes e podem ser removidas com segurança para deixar o código mais limpo.
Se o tipo declarado não corresponder ao tipo de um valor, você pode rapidamente atualizar o tipo usando Alt+Enter. Ou com o PHP 8, o PhpStorm irá sugerir o uso de um tipo union.
O uso da função isset()
só é eficaz em arrays e variáveis. Em todos os outros casos, faz mais sentido verificar se o operando não é null
. Use Alt+Enter para substituir as verificações isset()
por verificações de valor null
.
O PhpStorm destaca os usos do protocolo http://
em strings e oferece uma correção rápida Alt+Enter para convertê-los em https://
. Você também pode adicionar URLs à lista de ignorados através de uma correção rápida.
O PhpStorm destaca alguns típicos usos incorretos de nomes de parâmetros ou valores de retorno, por exemplo $
needle
e $haystack
ou $x
e $y0>. Isto pode ser um bug em potencial ou no mínimo bastante confuso para quem lê o código.
Agora você pode escolher um perfil de inspeção de código antes de fazer commit das alterações no VCS. Clique no ícone de engrenagem para mostrar as opções de commit, depois marque a caixa de seleção Analyze code, clique em Configure profile e escolha o perfil desejado. Perfis podem ser criados em Preferences/Settings | Editor | Inspections.
Em PHP, estruturas de loop como blocos foreach
, for
, while
e catch
não têm escopos isolados. Isto pode ser inconveniente se você quiser renomear uma variável somente dentro de um bloco.
No PhpStorm 2021.1, introduzimos um escopo sintético para esses blocos para que a refatoração de renomeação (Shift+F6) seja mais intuitiva.
PhpStorm 2021.1 analisa como as variáveis são usadas e injeta referências de linguagem automaticamente.
Por exemplo, se uma variável for usada numa função preg_*
, o PhpStorm sabe que é um padrão e destaca o RegExp.
O PhpStorm agora considera extensões nas seções require
e suggest
.
O PhpStorm irá avisá-lo quando uma extensão for registrada no composer.json
como sugerido, mas é usada sem verificações, como extension_loaded()
ou function_exists()
. Você pode usar uma correção rápida para mover extensões para require/require-dev
.
Neste lançamento, nosso principal foco foi estabilidade e qualidade. No total, corrigimos 2246 problemas enviados ao nosso rastreador de issues por usuários e membros da equipe JetBrains. Eis aqui alguns dos mais interessantes:
O Code With Meé uma ferramenta da JetBrains para desenvolvimento colaborativo e programação em pares. Ela inicialmente foi incluída no PhpStorm 2020.3 e neste lançamento vem com uma lista de melhorias importantes.
Defina o nível de acesso necessário ao seu projeto e compartilhe o link com seus colegas. Eles nem sequer precisam ter seus próprios IDEs instalados para colaborar. Além disso, a plataforma inclui chamadas de áudio e vídeo incorporadas, junto com mensagens de bate-papo.
Para empresas que exigem segurança extra, o Code With Me on-premises pode ser instalado e executado com segurança na rede privada da própria empresa.
Agora você pode definir configurações de SSL no cliente HTTP clicando em Add environment file e selecionando Private. O IDE vai criar um arquivo automaticamente, onde você poderá adicionar suas configurações SSL: clientCertificate
, hasCertificatePassphrase
, clientCertificateKey
, verifyHostCertificate
.
Há um novo ícone de olho que contém opções para a forma como o corpo da resposta é exibido. Você pode alternar os modos entre Texto / JSON / HTML / XML, pode ativar a numeração das linhas e há um novo botão para rapidamente copiar o corpo da resposta para a área de transferência (Copy Response Body to Clipboard).
Reparta o editor arrastando uma aba para os cantos da janela do IDE. Depois dê um duplo-clique na aba para maximizar a área do editor para ocupar o espaço dela. Dê outro duplo-clique nele para restaurá-lo ao tamanho original.
Use a linguagem de consulta JSONPath para pesquisar dentro de documentos JSON. Novas ações estão disponíveis em Edit | Find | Evaluate JSONPath.
PhpStorm now supports the newline-delimited JSON Lines format used for working with structured data and logs. O IDE reconhece os tipos de arquivo .jsonl, .jslines, .ldjson e .ndjson.
Agora é possível ajustar variações em fontes e configurar uma fonte substituta. Encontre as novas opções em Typography Settings em Preferences / Settings | Editor | Fonts.
Todos os novos recursos e melhorias do WebStorm 2021.1 também estão disponíveis no PhpStorm 2021.1, prontos para uso ou com plug-ins gratuitos no Plugin Marketplace.
Você agora pode corrigir problemas no CSS com o Stylelint em apenas alguns cliques. Passe o mouse sobre um problema no seu arquivo ou coloque o sinal de intercalação sobre ele, pressione Alt+Enter e selecione Stylelint: Fix current file.
Além disso, agora você pode especificar um caminho para o arquivo de configuração em Settings / Preferences | Languages & Frameworks | Style Sheets | Stylelint.
When working with style sheets, you can now check the specificity of your selectors – just hover over a selector that you want to check. Como alternativa, foque num seletor e pressione F1/Ctrl+Q para ver essas informações no pop-up Documentation.
Para criar uma nova solicitação pull, clique no ícone + ou vá para Git | GitHub | Create Pull Request.
A nova caixa de diálogo inclui tudo o que você precisa:
Confira as Novidades no DataGrip 2021.1 - todos esses recursos estão disponíveis no PhpStorm também. Eis aqui algumas delas.
A janela "Modify user", que você pode invocar num usuário no "Database Explorer" com Cmd/Ctrl+F6, agora tem uma interface do usuário para adicionar permissões de acesso a objetos.
Disponível para PostgreSQL, Redshift, Greenplum, MySQL, MariaDB, DB2, SQL Server e Sybase.
Esta é nossa solução para quem quiser gerar instruções simples diretamente a partir do navegador do banco de dados. Quando você clica com o botão direito do mouse num objeto no explorer, a lista que aparece contém itens especiais do modelo dinâmico.
Saiba mais sobre como criar seus próprios modelos dinâmicos de contexto.