LBRY Block Explorer
Search
LBRY Claims
• aula5
8b14a151095fa0e52f0ba7366f85a92067ddb1f1
Published By
@SHORTCUT
Created On
5 Jul 2021 02:42:30 UTC
Transaction ID
e61879a9eddc2747622e54d002c899e23cb8bc849598f740226c49fde60f96bd
Cost
Safe for Work
Free
Yes
[PHP - aula 5] - @debxp ensina PHP para @vlad - Escopo de Variáveis
# Aula 4: Variáveis e tipos de dados
## 6 - Escopo de variáveis
O "escopo" é o limite da disponibilidade de uma
variável no nosso código.
De modo geral, todas as variáveis no PHP têm escopo
global, menos nas funções definidas pelo usuário.
+ Observe o exemplo:
: php > $a=1; $b=2;
: php > function soma() { return $a + $b; }
: php > echo soma();
: PHP Notice: Undefined variable: a in php shell code on line 1
: PHP Notice: Undefined variable: b in php shell code on line 1
: 0
Aqui, as variáveis '$a' e '$b' são globais para toda
a sessão, mas não são vistas pela função 'soma()'.
+ NOTA: o construtor de linguagem 'return' faz com que
+ a função encerre sua execução retonando algum valor.
---
Para que a função enxergue as variáveis fora de seu
escopo global, nós podemos declará-las na função com
a palavra chave 'global':
: php > $a=1; $b=2;
: php > function soma2() { global $a, $b; return $a + $b; }
: php > echo soma2();
: 3
Outra forma seria com a array associativa interna
do PHP: '$GLOBALS':
: php > $a=10; $b=6;
: php > function menos() { return $GLOBALS['a'] - $GLOBALS['b']; }
: php > echo menos();
: 4
+ A palavra reservada 'global' faz uma referência
+ às variáveis fora do escopo local da funçã
---
Ainda sobre o escopo local das funções,
observe o exemplo:
: php > function contador() { $a = 0; echo $a; $a++; }
: php > contador();
: 0
: php > contador();
: 0
: php > contador();
: 0
: ...
O problema aqui é que o valor de '$a' volta a ser '0'
cada vez que a função é chamada, e o nosso contador
não consegue fazer o incremento.
Para resolver isso, nós podemos declarar '$a' como uma
'variável estática'.
---
Author
Content Type
Unspecified
video/mp4
Language
Open in LBRY
More from the publisher
100,000,000.00 LBC
Controlling
VIDEO
NSFW
VLAD'
sextape
lbry://@SHORTCUT/sextape
No description available
Transaction
Created
1 month ago
Content Type
Language
video/mp4
English
100,000,000.00 LBC
TESTE
biltre-teste
lbry://@SHORTCUT/biltre-teste
No description available
Transaction
Created
1 month ago
Content Type
Language
text/markdown
English
10,000,000.00 LBC
DUCK
Duck.Game
lbry://@SHORTCUT/Duck.Game
No description available
Transaction
Created
1 month ago
Content Type
Language
application/x-ext-rar
English
Controlling
VIDEO
FIAT
fiat-test
lbry://@SHORTCUT/fiat-test
No description available
Transaction
Created
1 month ago
Content Type
Language
video/mp4
pt
Controlling
FUTUR
Future-of-monetization-and-content-view-rewards
lbry://@SHORTCUT/Future-of-monetization-and-content-view-rewards
No description available
Transaction
Created
1 month ago
Content Type
Language
text/markdown
English
TEST
testeeeee
lbry://@SHORTCUT/testeeeee
No description available
Transaction
Created
1 month ago
Content Type
Language
text/markdown
English
Controlling
VIDEO
[PHP
aula9
lbry://@SHORTCUT/aula9
No description available
Transaction
Created
1 month ago
Content Type
Language
video/mp4
pt
TESTE
teste2
lbry://@SHORTCUT/teste2
No description available
Transaction
Created
1 month ago
Content Type
Language
text/markdown
English
Controlling
ODYSE
ipadsupport
lbry://@SHORTCUT/ipadsupport
No description available
Transaction
Created
1 month ago
Content Type
Language
text/markdown
pt