-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Requisição de arquivos #99
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
# Requisição de arquivos | ||
|
||
Em Linguagens de script, precisamos incluir dentro de nosso programa outros arquivos, e | ||
para fazer isso usamos as requisições de arquivos que podem incluir funções, constantes, | ||
configurações do banco, ou até mesmo um arquivo que contem toda definição de uma classe. | ||
|
||
### Qual a diferença entre include & require? | ||
|
||
A diferença entre include e require é como um erro é tratado. | ||
|
||
``Require`` - produz um erro E_COMPILE_ERROR, fazendo com que a execução do script seja encerrada. | ||
|
||
``include`` - produz um E_WARNING, apenas produz um warning, não chega a encerrar a aplicação. | ||
Que pode ser "abafado" com @ | ||
|
||
``require`` & ``include`` são funções do tipo ``statement``. A semântica correta do uso destas funções é: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. possível correção: são statements e não funções |
||
|
||
|
||
```text | ||
include 'arquivo.php' OU require 'arquivo.php' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. include 'arquivo.php';
// ou
require 'arquivo.php'; |
||
``` | ||
|
||
### Cuidados | ||
- Não use desnecessariamente as requisições. | ||
- Sempre verifique para não fazer requisições de arquivos por acidente. | ||
|
||
Assim evitamos a duplicidade de requisições, pois caso seja usado repetidamente na mesma pagína o mesmo será | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. typo: |
||
incluso ou requerido duplicadamente. | ||
|
||
### Atenção! | ||
Temos o include_once e o require_once que faz a verificação dos arquivos para não ter nenhuma | ||
requisição duplicada, sendo assim ele verifica se o mesmo já foi Incluído uma vez, caso tenha sido ele não faz uma nova | ||
inclusão. Por tanto sempre que possível use o include_once e o require_once | ||
|
||
### Composer | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Talvez caiba aqui explicar o que é o autoload e fazer uma implementação usando o spl. |
||
|
||
O Composer é uma ferramenta para o gerenciamento de dependências em PHP. | ||
Ele permite que você declare as bibliotecas que seu projeto necessita e ele gerencia, instala | ||
e atualiza. Com o composer fazemos todo esse trabalho de requisições e muitas outras coisas | ||
composer é uma ferramente muito poderosa. | ||
|
||
|
||
- Instalação de novas dependências no projeto; | ||
- Atualização das dependências já instaladas no projeto; | ||
- Remoção de dependências instaladas no projeto; | ||
- Autoload para os arquivos do projeto, além dos pacotes de terceiro; | ||
- Execução de scripts; | ||
- Plugins para estender o comportamento padrão; | ||
- Permite determinar dependências que serão instaladas no modo de desenvolvimento ou em modo de produção. | ||
|
||
|
||
Ir para: [5.1 Include](1-include.md) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Requisição de arquivos | ||
|
||
## O que é include? | ||
|
||
O include faz inclusão do arquivo e uma avaliação, logo após a inclusão, o arquivo se torna | ||
disponível na nossa aplicação. Caso o arquivo não exista, nos retornar um erro `WARNING` do | ||
construtor include. | ||
|
||
### | ||
|
||
```php | ||
<?php | ||
|
||
include 'arquivo.php'; | ||
|
||
?> | ||
``` | ||
|
||
Ir para: [5.2 Require](2-require.md) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Requisição de arquivos | ||
|
||
## O que é require? | ||
|
||
O require faz inclusão do arquivo e uma avaliação, logo após a inclusão, o arquivo se torna | ||
disponível na nossa aplicação. Caso o arquivo não exista, nos retornar um erro `FALTAL ERROR`, | ||
e trava todo a aplicação, ele parará o script enquanto o include | ||
apenas emitirá um alerta (E_WARNING) permitindo que o script continue. | ||
|
||
### | ||
|
||
```php | ||
<?php | ||
|
||
require 'arquivo.php'; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
// x.php
return fn () => 'x';
// y.php
/** @var (callable(): string) $c */
$c = require 'x.php';
var_dump($c()); // 'x'; |
||
|
||
?> | ||
``` | ||
Ir para: [5.3 Include Once](3-include_once.md) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Requisição de arquivos | ||
|
||
## O que é include_once? | ||
|
||
O include_once tem a mesma funcionalidade que o `include`, sua diferença é que ele não faz a inclusão novamente | ||
do arquivo, ele inclui apenas uma vez assim evita sobreposição. Ele ajudará a evitar problemas como redefinição de funções, | ||
reatribuição de valores de variáveis, etc. | ||
|
||
# | ||
|
||
```php | ||
<?php | ||
|
||
include_once "arquivo.php"; | ||
|
||
?> | ||
``` | ||
|
||
|
||
Ir para: [5.4 Require Once](4-require_once.md) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Requisição de arquivos | ||
|
||
## O que é require_once? | ||
|
||
O require_once Tem a mesma funcionalidade que o require, sua diferença é que ele não | ||
faz a inclusão novamente do arquivo, ele inclui apenas uma vez assim evita sobreposição. | ||
|
||
# | ||
|
||
```php | ||
<?php | ||
|
||
require_once "arquivo.php"; | ||
|
||
?> | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
e escopo também.