Boa noite,
Existe a possibilidade de utilizar os seguintes componentes abaixo, para capturar informações na internet, sem precisar utilizar o composer? "symfony/http-client": "^5.0", "symfony/browser-kit": "^5.0", "symfony/css-selector": "^5.0"
Boa noite,
Existe a possibilidade de utilizar os seguintes componentes abaixo, para capturar informações na internet, sem precisar utilizar o composer? "symfony/http-client": "^5.0", "symfony/browser-kit": "^5.0", "symfony/css-selector": "^5.0"
Olá, Andre.
Sim, é possível. Porém as dificuldades nisso serão bem maiores, pois basicamente o composer é a ferramenta padrão para os projetos PHP.
Mesmo que seu projeto não seja Orientado a Objetos, e você deseja utilizar componentes de terceiros para auxiliar, você pode usar o comporser e chamar essas pacotes onde desejar, por exemplo:
Aqui um arquivo com códigos sem O.O.
<?php
require_once __DIR__ . '/meu_aquivo_de_funcoes.php';
$dadosDados = obterDadosCliente();
echo exibir_tela($dadosDados);
Aqui um arquivo com códigos sem O.O, utilizando o componente symfony/css-selector.
<?php
require_once __DIR__ . '/meu_aquivo_de_funcoes.php';
// aqui eu imagino que o projeto tenha que descer 2 níveis, para acessar o vendor e utilizar o autoload.
require_once __DIR__ . '../../vendor/autoload.php;
// importo o componente instalado pelo composer.
use Symfony\Component\CssSelector\CssSelectorConverter;
$dadosDados = obterDadosCliente();
// estou imaginando um tratamento qualquer no html
$converter = new CssSelectorConverter();
$html_fragmento = $converter->toXPath('div.item > h4 > a');
// aqui utilizando como segundo parâmetro da função, de forma lúdica, como se caso desejássemos modificar o html , basta informar da maneira que fizemos.
echo exibir_tela($dadosDados, $html_fragmento);
Vale salientar que para instalar os composnentes desejados, como por exemplo o que utilizei acima, temos que executar o seguinte comando por meio do terminal na raiz do projeto.
composer require symfony/css-selector
Estou tomando o pressuposto que você quer utilizar componentes de terceiro em um projeto que não usa PHPOO e que por sua vez tem grandes chances de ser estruturado, acredito que se for esse o cenário normalmente mais ideal seria refatorar para que todo o projeto seja PHPOO.
Outra dica, nunca mude o local de destino do diretório vendor, ou modifique quaisquer arquivos que lá contém. Deixe isso a cargo do composer, pois é ele quem deve gerenciar as dependências do seu projeto. Caso deseje por exemplo atualizar algum pacote, faça por meio do composer.
Por mais incrível e óbvio que isso pareça, já peguei projeto que foi modificado esses itens, e isso deixa o caos reinar no projeto.
Espero ter ajudado, qualquer dúvida vamos interagindo por aqui :)