1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

duvida de php4/php5

Discussão em 'Web Development' iniciada por Rolufi, 20 de Agosto de 2007. (Respostas: 5; Visualizações: 1280)

  1. 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 ??:)
     
  2. CoolMaster

    CoolMaster Power Member

    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.
     
  3. alfinete

    alfinete Power Member

    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
     
  4. 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
     
  5. naoliveira

    naoliveira Power Member

    O teu problema é estares a passar uma string quando a função está à espera de um long
     
  6. CoolMaster

    CoolMaster Power Member

    Exacto, faz um cast ou usa o intval() e esta feito.
     

Partilhar esta Página