Beruflich Dokumente
Kultur Dokumente
– asp_tags <boolean>
● Ativa o uso do estilo ASP <% %> tags além da usual tag
<?php ?>. Inclui a abreviatura de impressão da variável-
valor <%= $value %>.
– precision <integer>
● O número de dígitos significativos mostrados em números
de ponto flutuante.
– display_erros <boolean>
● Define de exibirá ou não erros na tela
PHP.ini
– exit_on_timeout <boolean>
● Esta é uma diretiva mod_php-only Apache1que força um
subprocesso do Apache para sair se um execução PHP
ocorre um timeout. Esse timeout causa uma chamada interna
longjmp() no Apache1 que pode deixar alguma extensão em
um estado inconsistente Ao terminar o processo, será limpo
de qualquer bloqueio pendente ou da memória.
– realpath_cache_size <integer>
● Determina o tamanho de cache do realpath para ser usado
pelo PHP. Este valor deve ser aumentado em sistemas onde
PHP abre muitos arquivos, para refletir a quantidade das
operações realizadas com os arquivos.
Exemplo de script em PHP
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php echo "<p>Alô Mundo</p>"; ?>
</body>
</html>
Atribuindo Valores
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$a = 10;
$b = 15;
$c = $a + $b;
echo "$a mais $b é igual a $c";
?>
</body>
</html>
Comentários “/* */”
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
/*
O código abaixo soma duas variáveis
e exibe o valor encontrado
*/
$a = 10;
$b = 15;
$c = $a + $b;
echo "$a mais $b é igual a $c";
?>
</body>
</html>
Comentários “//”
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$a = 10; //A variável $a recebe o valor 10
$b = 15; //A variável $b recebe o valor 15
//A variável $c recebe o valor da soma
$c = $a + $b;
//O resultado obtido é exibido
echo "$a mais $b é igual a $c";
?>
</body>
</html>
Função
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
function soma($a)
{
global $b;
$b = $a + 5;
}
soma(10);
echo "o valor de 'b' é $b";
?>
</body>
</html>
Códigos Booleanos
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$a = True;
if ($a)
{
echo "Verdadeiro";
}
else
{
echo "Falso";
}
?>
</body>
</html>
Código com Hexadecimal
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$a = 0x1A; //Coresponde ao decimal 26
$b = -16;
$c = $a + $b;
echo "a + b = $c";
?>
</body>
</html>
Ponto Flutuantes
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$preco = 11.90;
$soma = $preco * 4;
echo "Quatro revistas W custam R$ $soma<br>";
?>
</body>
</html>
Trabalhando com Strings
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$texto1 = 'Esse é o primeiro texto.<br>';
$texto2 = "Esse é o segundo texto.";
echo $texto1;
echo $texto2;
?>
</body>
</html>
Trabalhando com vetores “array”
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
$frutas = array(
1 => "Laranja",
2 => "Maçã",
3 => "Uva");
echo "<li> $frutas[1]<br>";
echo "<li> $frutas[2]<br>";
echo "<li> $frutas[3]<br>";
?>
</body>
</html>
Constante
<html>
<head>
<title>Teste PHP</title>
</head>
<body>
<?php
define("CONSTANTE", "Alô mundo.");
echo CONSTANTE;
?>
</body>
</html>
Operadores Matemáticos
<?php
$x = 20;
if ($x > 10)
{
echo("O valor da variável é maior
que 10.");
}
?>
Estrutura de Controle
● if -else
<?php
$x = 5;
if ($x > 10)
{
echo("O valor da variável é maior que
10.");
}
else
{
echo("O valor da variável é menor
que 10.");
}
?>
Estrutura de Controle
● Swicth
<?php
$d = getdate();
switch ($d['wday'])
{
case 5:
echo("Finalmente Sexta");
break;
case 6:
echo("Super Sábado");
break;
case 0:
echo("Domingo Sonolento");
break;
default:
echo("Estou esperando pelo fim da semana");
}
?>
Estrutura de Controle
● for
<?php
for ($i = 1; $i < 10; $i++)
{
echo("Linha $i <br>");
}
?>
Estrutura de Controle
● While
<?php
$i = 1;
while ($i < 10000)
{
echo($i);
$i *= 2;
echo(" vezes 2 é igual a $i <br>");
}
?>
Funções
<?php
function soma($valor1, $valor2)
{
$resultado = $valor1 + $valor2;
return ($resultado);
}
$x = soma(7, 8);
echo($x);
?>
Função
<?php
function escreveTexto()
{
echo("Já sei criar funções!");
}
escreveTexto();
?>
Função phpinfo
phpinfo(INFO_MODULES);
?>
Classes e objetos
– file_get_contents($arquivo)
● Pagina.php
<?php
$texto = file_get_contents('modelo.html');
echo str_replace(array('{nome}','{email}'),
array('Fulano de Tal','fulano@detal.com'),
$texto);
?>
file_put_contents
– file_put_contents($arquivo,$conteudo)
● $conteudo pode ser um array ou uma
string.
● Retorna o número de bytes escritos no
<?php
$linhas = array('Primeira linha.','Segunda linha.',
'Terceira linha.');
$bytes =file_put_contents('teste.txt',implode("\n",$linhas));
if($bytes)
echo "$bytes bytes escritos";
else
echo "Erro!";
?>
Lendo Arquivo por Partes
longos.
● Funções:
– fopen
– fgets / fgetc
– feof
– fclose
fopen
● fopen($arquivo, $modo)
– Lê o $arquivo especificado.
– Retorna uma Referência de Arquivo, ou false
em
caso de erro.
● $modo pode ser:
● fgetc($recurso)
– Lê e retorna o próximo caractere do
Recurso
de Arquivo especificado.
● fgets($recurso)
– Lê e retorna a próxima linha do Recurso de
Arquivo especificado.
feof e fclose
● feof($recurso)
– Retorna true, se o arquivo indicado pelo
$recurso tiver chegado ao fim; false, do
contrário.
● fclose($recurso)
<?php
$rec = fopen('teste.txt', 'r');
$i = 0;
while(!feof($rec))
{
$linha = fgetc($rec);
echo "Caractere $i: $linha<br>\n";
$i++;
}
fclose($rec);
?>
Lendo por linha
<?php
$rec = fopen('teste.txt', 'r');
$i = 0;
while(!feof($rec))
{
$linha = fgets($rec);
echo "Linha $i: $linha<br>\n";
$i++;
}
fclose($rec);
?>
Escrevendo um Arquivo por partes
<?php
$rec = fopen('teste2.txt', 'wr+');
if(!$rec)
{
echo "Erro!";
}
Else
{
fwrite($rec, "Leia com atenção\n");
fwrite($rec, "1 + 1 = " . (1+1));
fclose($rec);
}
?>
Verificando Arquivos
● file_exists($arquivo)
– Retorna true se o arquivo existe; false, do
contrário.
<?php
if (file_exists('/usr/local/htdocs/index.html'))
echo "O arquivo existe!";
else
echo "O arquivo não existe!";
?>
Permissões
Permissões
● Leitura
– is_readable($arquivo)
● Escrita
– is_writable($arquivo)
● Executar
– is_executable($arquivo)
● Verifica se é um diretório
– is_dir($arquivo)
● Verifica se é um arquivo
– is_file($arquivo)
● Verifica se é um atalho
– is_link($arquivo)
–
● dirname($caminho)
– Retorna a porção do $caminho composta
pelo diretório.
● basename($caminho, [$extensao])
– Retorna a porção do $caminho composta
pelo nome do arquivo.
– Se o nome do arquivo terminar em
$extensao, essa também será eliminada.
● filesize($arquivo)
– Retorna o tamanho do arquivo (em bytes)
Diretório e Arquivo
<?php
function ilista($txt){
echo "<li>O arquivo $txt.</li>\n";
}
$arquivo = '/etc/apt/sources.list';
if(file_exists($arquivo)){
?>
<h3><?= $arquivo ?></h3>
Diretório: <strong><?= dirname($arquivo) ?
></strong><br>
Arquivo: <strong><?= basename($arquivo) ?></
strong><br>
Arquivo sem extensão: <strong><?=basename($arquivo, '.list') ?
></strong><br>
Tamanho: <strong><?= filesize($arquivo) ?></
strong> bytes<br>
http://marx.vanderlinden.com.br/ 30
<ul>
Diretório e Arquivo
<?php </ul>
if(is_readable($arquivo)) http://marx.vanderlinden.com.br/
ilista('pode ser <?php
lido'); }
if(is_writable($arquivo)) else {
ilista('pode ser echo "Erro: arquivo não
escrito'); existe.<br>";
if(is_executable($arquivo)) ilista('é }
executável'); ?>
if(is_dir($arquivo)) ilista('é um
diretório');
if(is_file($arquivo)) ilista('é um
arquivo
comum');
if(is_link($arquivo)) ilista('é um link
simbólico');
?>