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

Dúvida com ficheiros em PHP

Discussão em 'Web Development' iniciada por ricardoaux, 3 de Março de 2009. (Respostas: 5; Visualizações: 584)

  1. ricardoaux

    ricardoaux Power Member

    Boas
    Como é que num ficheiro como este, crio um script que não me mostre ao linhas comentadas (com # no inicio de cada), exemplo:

    #Banned extension list

    # File extensions with executable code

    # The following file extensions can contain executable code.
    # This means they can potentially carry a virus to infect your computer.

    .ade # Microsoft Access project extension
    .adp # Microsoft Access project
    .asx # Windows Media Audio / Video
    .bas # Microsoft Visual Basic class module
    # .bat # Batch file
    .cab # Windows setup file
    .chm # Compiled HTML Help file
    .cmd # Microsoft Windows NT Command script
    # .com # Microsoft MS-DOS program

    -------------------------------------------------------------------------------------
    E como por exemplo, fazendo de conta que não quero tirar o comentado, retiro o que tenho até " to infect your computer.", ou outra expressão

    ????????????????????????????????????????????

    -------------------------------------------------------------------------------------

    Desde já agradeço!

    Aqui fica um bocado do script que tenho até ao momento onde penso que devo adicionar o que quero:
    Código:
        $file='../files/bannedextensionlist';
                $data=file($file);
                $a=0;
                foreach ($data as $line)
                {
                    echo $line;
                    if(trim($line) != "")
                    {
                        echo "<form action=apagar.php method=post>";
                        echo "<input type='hidden' name='apaga' size='20' value=$a>";
                        echo "<input type='hidden' name='op' size='1' value=1>";
                        echo "<input type=submit value=Apagar>";
                        echo "</form>";
                        echo "<br><br>";
                    }
                    $a=$a+1;
                }
    
     
    Última edição pelo moderador: 3 de Março de 2009
  2. ricardoaux

    ricardoaux Power Member

    estou a experimentar tirar o # com o strpos, mas deparo-me com um problema, se não encontrar nenhum # não escreve a linha.

    $pos = strpos($line, "#");

    if (trim($line) != "" && $pos != 0)
    {

    }

    o problema é que por exemplo:
    # a ---> $pos = 0
    # b ---> $pos = 0
    cd#e ---> $pos = 2
    abcd ---> axo k assume 0 também, mas se fizer echo nem sequer aparece valor nenhum
     
  3. Armadillo

    Armadillo Folding Member

    a função strpos retorna False se não encontrar a string pretendida.

    cumps
     
  4. ricardoaux

    ricardoaux Power Member

    mas quando encontra na posição 0 diz que tambem é False
     
  5. Armadillo

    Armadillo Folding Member

    Código:
      <?php
    $mystring = 'abc';
    $findme   = 'a';
    $pos = strpos($mystring, $findme);
    
    // The !== operator can also be used.  Using != would not work as expected
    // because the position of 'a' is 0. The statement (0 != false) evaluates 
    // to false.
    if [COLOR=DarkOrange][B]($pos !== false) [/B][/COLOR]{
         echo "The string '$findme' was found in the string '$mystring'";
             echo " and exists at position $pos";
    } else {
         echo "The string '$findme' was not found in the string '$mystring'";
    }
    ?>[COLOR=#000000][COLOR=#0000bb]
    [/COLOR][/COLOR]
    http://pt.php.net/strpos
     
  6. slack_guy

    slack_guy Power Member

    PHP:
    #!/usr/bin/php -q
    <?php

        
    // ficheiro: teste.php

        
    $linhas file("file_teste.txt");
        foreach( 
    $linhas as $linha ) {
            if ( 
    preg_match'/^[^#\s]/'$linha ) ) echo $linha;
        }

    ?>
    Código:
    $ php -f teste.php
    
    .ade # Microsoft Access project extension
    .adp # Microsoft Access project
    .asx # Windows Media Audio / Video
    .bas # Microsoft Visual Basic class module
    .cab # Windows setup file
    .chm # Compiled HTML Help file
    .cmd # Microsoft Windows NT Command script
    
     
    Última edição: 3 de Março de 2009

Partilhar esta Página