apriolo/buscador-cursos
Composer 安装命令:
composer require apriolo/buscador-cursos
包简介
Projeto para buscar cursos no site da alura
README 文档
README
Como teste foi feito um projeto para crawler dos cursos de php da Alura
Foram utilizados as seguintes ferramentas Docker e Compose Usados para criar o ambiente Docker com o php e o compose para administrar os containers do docker, neste caso foi utilizado apena 1 com o php. - docker-compose build (para baixar as dependencias da imagem) - docker-compose up -d (construir a imagem e subir os containers) No compose foi utilizado a versão 3 Os services criados foram PHP Dockerfile-php utilizando a imagem do php:fpm-stratch (imagem:versao) instalando algumas ferramentas junto git,zlib1g,libxml2,libzip,mysqli Instalando o composer para orquestrar o projeto Fazendo um curl para o instalador do composer, e depois movendo o arquivo composer.phar para o diretorio do composer no container Definido o WORKDIR para /var/www dentro do container Volumes os volumes são o local onde o projeto vai ser copiado e utilizado dentro do container do docker Utilizado neste projeto foi ".:/var/www/composerTest" Networks São as redes de comunicação internas dos containers, por onde eles fazem as comunicações substituindo o ip pelo nome do container networks: - symfony
Composer Orquestrador de dependecias do php
com o composer require podemos adicionar dependecias existentes no packgist no projeto, como exemplo adiconamos algumas: phpunit, phpcs para adionar dentro do projeto "composer require distribuidor/dependencias" exemplo > "composer require guzzlehttp/guzzle" ou no arquivo composer.json podemos adicionar a dependencias dentro do indice de require EX "require": { "guzzlehttp/guzzle": "^7.3", "symfony/dom-crawler": "^4.2", "symfony/css-selector": "^5.2" } ou se a dependencia for somente para o ambiente de desenvolvimento usamos a tag --dev no composer require ou no composer.json "require-dev": { "phpunit/phpunit": "^9.5", "squizlabs/php_codesniffer": "^3.6", "phan/phan": "^4.0" }
Vimos o autoload, para facilitar a importação de classes dentro do composer
temos a opção de importar arquivos de funções importantes que podem ser usadas em qualquer lugar do projeto
"autoload": {
"files": [
"./functions.php"
]
}
Importar classes que estão fora do padrão PSR4 sobre as definições de nomes de classe e namesapce
"autoload": {
"files": [
"./functions.php"
],
"classmap": [
"./Teste.php"
]
}
Utilizar as classes do projeto como namespace adequada a PSR4
"autoload": {
"files": [
"./functions.php"
],
"classmap": [
"./Teste.php"
],
"psr-4": {
"Alura\BuscadorDeCursos\" : "src/"
}
}
na aula utilizamos algumas dependecias de teste e suas configurações, criamos scripts para usar as dependencias. - phpunit - phpcs - phan Criamos scripts para executar as ferramentas direto com o composer "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", } e para facilitar criamos um script que executa todas de uma vez "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", "check" : [ "@phan", "@cs", "@test" ] } E também é possivel executar scripts com o composer após algum evento, como exemplo apos o composer update rodar o check "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", "check" : [ "@phan", "@cs", "@test" ], "post-update-cmd": [ "teste" ] }
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-3.0
- 更新时间: 2021-05-24