duvida de php4/php5

Rolufi

Membro
Viva,

estava aqui a testar certos códigos em php5 (visto que até agora sempre utilizei a versão 4 do php), quando deparei-me perante algumas dúvidas:

1º) no php 5 é obrigatório iniciar sempre com <?php ??!?! no php 4 eu punha só <?

2º) no php 4, muitas das vezes utilizava a seguinte instrução por ex: <?=$valor;?> coisa que no 5 dá erro... já tentei inclusive com <?php=$valor;?> e nada....

Alguém com conhecimentos de causa para me dar umas luzes sobre esta transição do 4 para o 5 ??:)
 
O PHP5 mantem compatibilidade com o PHP4 e PHP3.
A unica razão de isso não te estar a funcionar é porque no php.ini do teu PHP5 não teres a opção short_tags activa logo não podes usar <? , tens que usar <?php . Activa o short_tags e esta feito.
 
uma das diferenças que eu conheço ou penso que seja é que o php4 apesar de ter poo, p php5 é mais orientado a objectos, de que aualquer uma das versões anteriores, ou seja o modelo de objectos esta muito mais estavel e fiavel, que nas outras versões anteriores
 
já que se fala em transição do php 4 para o 5, agora com o 5 aparece-me o seguinte erro:
Warning: mktime() expects parameter 4 to be long....

$dir = "a/";
$dh = opendir($dir);
while (($filename = readdir($dh)) != false) {
$a = substr($filename, 0, 2);
$b = substr($filename, 3, 2);
$c = substr($filename, 6, 4);
$data_fx = mktime(0, 0, 0,$a,$b,$c); ------------------> linha que dá erro
$data_hj = mktime(0, 0, 0, date(m), date(d), date(Y));
if (substr($filename,-4) == ".txt") {
if (($data_hj - $data_fx) < 604800) echo $filename;
}
}

o nome do ficheiro é por exemplo: 20-08-2007.txt

Help :-D
 
Back
Topo