Dev (Back & Front)ARTIGO

Notebooks Jupyter em PHP, além do Python? Sim, é possível

No seguinte artigo, Rogério Prado de Jesus mostra como utilizar linguagens diferentes na plataforma Jupyter.

Notebooks Jupyter em PHP, além do Python? Sim, é possível
Imagem: Rogério Prado de Jesus

Fala, pessoal! Tudo bem?

É muito comum que durante nossa jornada de cursos de Big DataBig data16 conteúdosResolvendo desafios de Big Data com Ciência de Dados na UberData · abr 2019Segurança “Data-Driven”: como big data e IA estão redefinindo a detecção de ameaças em tempo realDevSecOps · jan 2026USP lança MBA em Inteligência Artificial e Big DataAI · mar 2024Ver tudo em Data , Analytics, Data Science, IAInteligência artificial440 conteúdosUX e IA: Transformando Experiências Digitais com Inteligência ArtificialProduto & UX · jan 2025MCP: O que é e por que você vai ouvir falar disso em breve?AI · jul 2025IA generativa e a urgência de reconstruir nossa relação com a verdadeAI · jun 2025Ver tudo em AI e afins, sejamos apresentados à plataforma Jupyter e aos seus notebooks, não é mesmo?

Jupyter: The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, data visualization, machine learning, and much more.

Acredito que se você já mexeu nessa plataforma, o padrão é usar a linguagem de programação Python, certo? Talvez R também? E se eu te disser que é possível usar várias outras também?

Sim, na data da publicação deste artigo, por exemplo, já havia mais de 40 linguagens suportadas. E o mais impressionante: o PHP é, sim, uma dessas linguagens suportadas no Jupyter Notebook!

Vamos ver então como fazer?

Primeiro: tenha o Jupyter disponível. A maneira mais simples que conheço no Windows é tendo o Anaconda disponível. Você consegue mais informações acessando o site oficial.

  • Anaconda: The World’s Most Popular Python/R Data Science Platform

Tenha o PHP e o Composer com as dependências instaladas

Através deste link, você consegue pegar a última versão disponível do PHP. Para as coisas funcionarem você precisa pelo menos da versão PHP 7.2+.

Vale a pena colocar a pasta do binário do php.exe na sua variável de ambiente PATH. Dessa forma, você pode chamar o comando PHP de qualquer terminal. Talvez te ajude: a versão que usei aqui no meu computador é a PHP 7.2.7 NTS x64.

É necessário também ter instalado o gerenciador de dependências Composer. Mais informações no site oficial. Se instalar ele certinho, vai poder ter o comando composer disponível de qualquer terminal.

E, por último, é necessário que você tenha no PHP a extensão ZMQ. Para isso:

  • Baixe no site da extensão PECL a versão correspondente ao que você tem no seu computador (no meu caso, baixei a 7.2 Non Thread Safe (NTS) x64). Quer saber qual sua versão do PHP? É fácil: no terminal, digite php -v.
  • Na mesma pasta onde está o arquivo php.exe, descompacte o arquivo libzmq.dll
  • Na pasta ext, descompacte o arquivo php_zmq.dll
  • Inclua, no fim do seu arquivo php.ini, a declaração extension=php_zmq.dll

Não sabe onde fica o arquivo php.ini? Para descobrir é fácil, basta digitar o seguinte comando no terminal: php --ini.

Foi na pasta e não achou um arquivo php.ini? Tranquilo – faça uma cópia do arquivo php.ini-development como php.ini e edite-o em seguida.

Quer confirmar se a extensão ZMQ está instalada? Na linha de comando você pode executar php -m para mostrar todas as extensões disponíveis.

Instale o componente Jupyter-PHP (o kernel de PHP para o Jupyter)

No site oficial é possível encontrar mais informações. Em resumo:

Baixar o instalador .phar, entrar na pasta onde baixou pelo terminal, e executar: php jupyter-php-installer.phar install.

Resultado da instalação

E é isso! Se tiver problemas com o composer não acessando a URL do Packagist, pode dar uma olhada neste projeto aqui – nele você encontra tem mais instruções!

Pronto, agora é só reiniciar o seu Jupyter, e quando for criar um notebook, vai encontrar a opção de escolher PHP também (além dos outros que você já tinha, tipo o Python 3).

Aqui vai um exemplo:

Um exemplo de Jupyter Notebook usando o kernel PHP

Se quiser testar no seu próprio ambiente, é só baixar neste link.

  • Por que usar PHP nesse mundo? Não era para estarmos focando mais em Python, R e outras?

Acho muito que é uma questão parecida com o que eu via no passado quando estava bastante envolvido com comunidades e meetups.

Já ouvia o seguinte:

  • “Poxa, Golang seria uma opção muito melhor para IA, por ser mais rápida e etc”

Mas o Python já tinha ganhado a briga, já que os algoritmos matemáticos todos já tinham sido implementados nele, e em Golang, não.

Hoje, pela pesquisa rápida que fiz, Golang ainda não tem ecossistema que se compara ao de R ou Python, mas não quer dizer que não tenha suas vantagens, né?

Entre os pontos positivos do PHP, acredito em usá-lo também para ML e afins, aqui no “Banco X”:

E você, o que anda fazendo aí na sua área? Bora testar mais essa opção?

O mais importante é compartilhar o que está fazendo, assim todos podemos ganhar e a empresa também!

Podem me chamar para conversar em todos os canais, ok?

Até a próxima. Abraços!

***

Este artigo foi publicado originalmente em RogerioPradoJ.com.

Desenvolvedor, consultor de TI e "OpenSourcer" no GitHub. Pai do Léo, evangelista da comunidade PHPSP, muitas coisas na Caixa e criador da PradoJ.com. Tecnólogo em PD pela FATEC-SP. Mantém o blog RogerioPradoJ.com e é co-autor/tradutor do livro Modernização de Aplicações Legadas em PHP.

Ver perfil