1. Não existe variável estática global em PHP.
Quando eu estava desenvolvendo .Net no passado, eu poderia usar o seguinte método para armazenar alguns dados em cache:
view plaincopy to clipboardprint?
teste de classe pública {
private static int Count = 0; //Esta variável é válida em toda a aplicação.
}
teste de classe pública{
private static int Count = 0; //Esta variável é válida em toda a aplicação.
}
PHP é uma linguagem interpretada Embora possua o modificador estático, seu significado é completamente diferente daquele em .Net.
Mesmo que uma variável na classe seja declarada estática, essa variável só será válida no domínio atual do aplicativo no nível da página.
2. Compreender o escopo das variáveis.
Variáveis declaradas fora de um método não podem ser acessadas dentro do corpo do método.
Tais como:
visualizar cópia simples para impressão da área de transferência?
<?php
$url = " www.webjx.com ";
função _DisplayUrl() {
echo $url;
}
função DisplayUrl() {
URL global $;
echo $url;
}
_DisplayUrl();
DisplayUrl();
?>
<?php
$url = " www.webjx.com ";
função _DisplayUrl() {
echo $url;
}
função DisplayUrl(){
URL global $;
eco $url;
}
_DisplayUrl();
DisplayUrl();
?>
O método _DisplayUrl não exibirá nenhum resultado porque a variável $url está inacessível no corpo do método _DisplayUrl. Basta adicionar global antes de $url, como o método DisplayUrl.
Variáveis globais definidas no corpo do método podem ser acessadas fora do método:
view plaincopy to clipboardprint?
<?php
função _DisplayUrl() {
global $meuNome;
$meuNome='yibin';
}
_DisplayUrl();
echo $meuNome; //saída yibin
?>