Seja Trabalhar com ficheiros - Leitura 402783 a HawkDesign, para ter acesso aos conteúdos exclusivos dos membros, por favor Registre-se!


Atenciosamente Gamer

Participe do fórum, é rápido e fácil

Seja Trabalhar com ficheiros - Leitura 402783 a HawkDesign, para ter acesso aos conteúdos exclusivos dos membros, por favor Registre-se!


Atenciosamente Gamer

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Últimos assuntos

» Tutorial tag guerra
Trabalhar com ficheiros - Leitura I_icon_minitimeSáb Out 18, 2014 12:29 am por orthon

» Iniciante Smudge
Trabalhar com ficheiros - Leitura I_icon_minitimeQui Ago 21, 2014 2:56 am por Cdubb

» Um Novo Aprendiz!
Trabalhar com ficheiros - Leitura I_icon_minitimeQui Ago 21, 2014 2:50 am por Cdubb

» Eaw galera
Trabalhar com ficheiros - Leitura I_icon_minitimeQua Ago 13, 2014 5:09 am por Cdubb

» [PSD] Tutorial !
Trabalhar com ficheiros - Leitura I_icon_minitimeSáb Ago 31, 2013 5:22 pm por Paulo_ComandBR

» Reasource Pack #1 Hawkdesign
Trabalhar com ficheiros - Leitura I_icon_minitimeTer Jun 18, 2013 11:46 pm por edicelio

» [ Sing ]Capitão America
Trabalhar com ficheiros - Leitura I_icon_minitimeDom Jun 02, 2013 1:50 am por edicelio

» Minha Primeira Borda Modelada
Trabalhar com ficheiros - Leitura I_icon_minitimeDom Jun 02, 2013 1:47 am por edicelio

» V for Vendetta
Trabalhar com ficheiros - Leitura I_icon_minitimeDom Jun 02, 2013 1:40 am por edicelio

» Gamer *--*
Trabalhar com ficheiros - Leitura I_icon_minitimeQui maio 30, 2013 10:58 pm por ϟƘƦƖןןΣx

» [Scorpion]Sign
Trabalhar com ficheiros - Leitura I_icon_minitimeQui maio 30, 2013 4:02 pm por ϟƘƦƖןןΣx

» Avaliem o kit ?
Trabalhar com ficheiros - Leitura I_icon_minitimeQui maio 30, 2013 3:45 pm por ϟƘƦƖןןΣx

» Leilão sign Jimi Hendrix
Trabalhar com ficheiros - Leitura I_icon_minitimeQui maio 30, 2013 2:31 pm por ϟƘƦƖןןΣx

» Doações para o forum!
Trabalhar com ficheiros - Leitura I_icon_minitimeQui maio 30, 2013 2:06 pm por ϟƘƦƖןןΣx

» Apresentação
Trabalhar com ficheiros - Leitura I_icon_minitimeQua maio 29, 2013 10:10 pm por ϟƘƦƖןןΣx

Top dos mais postadores

Gamer (4166)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
-Ice™ (3994)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
Doritosz™ (2125)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
- S t r y o n ' (2061)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
RafaNatural (1093)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
~ y i n g j i e (1062)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
-Vorteck ;3 (1033)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
Sky (1000)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
Hachi' (968)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 
Domi (861)
Trabalhar com ficheiros - Leitura Left_bar_bleueTrabalhar com ficheiros - Leitura BarTrabalhar com ficheiros - Leitura Right_bar_bleue 

Quem está conectado?

18 usuários online :: 0 registrados, 0 invisíveis e 18 visitantes

Nenhum


[ Ver toda a lista ]


O recorde de usuários online foi de 284 em Sáb Abr 10, 2021 8:52 am

Link-ME


Nós Na Área

Trabalhar com ficheiros - Leitura 93249840

Seletor de temas

  

3 participantes

    Trabalhar com ficheiros - Leitura

    RafaNatural
    RafaNatural
    Estudante
    Estudante


    Mensagens : 1093
    Coins : 294
    Frase : Antes só do quer mal Acompanhado!
    Sexo : Masculino
    Localização : Aracaju

    Trabalhar com ficheiros - Leitura Empty Trabalhar com ficheiros - Leitura

    Mensagem por RafaNatural Dom Set 18, 2011 10:15 pm

    Introdução

    De vez em quando é necessário ler, alterar ou criar ficheiros no servidor de Internet, como por exemplo, para criar contadores de acesso, estatísticas de visitas ou guardar algumas informações para visualizações posteriores que são demoradas para serem criadas pelo servidor, e que não seria muito bom gerá-las sempre que um visitante as quisesse ver.

    O PHP fornece um conjunto de funções muito boas para isto, e com alguns cuidados, os scripts funcionarão tanto em Windows como em Linux sem nenhuma alteração. Todas essas funções podem ser encontradas no manual do php, em "Filesystem functions".


    Abrir ficheiros

    A primeira função que se deve conhecer para trabalhar com ficheiros é a que cria uma ligação entre o script e o ficheiro propriamente dito:

    int fopen( string ficheiro, string modo [, int usa_include_path] );

    Esta função devolve um ponteiro para um ficheiro, que é utilizado noutras funções para lidar com ficheiros. O primeiro parâmetro, ficheiro, é uma string que indica o local do ficheiro a ser aberto, aqui vai a primeira dica: não utilize o modo de referência do windows, como c:\www\ficheiro.txt, pois não irá funcionar num servidor linux! Evite também ler e gravar ficheiros fora do directório onde o teu site está hospedado, às vezes torna-se difícil criar um directório fora do directório do site, e, se um dia quiseres transferir o teu site para uma outra máquina, pode acontecer que te esqueças daquele directório isolado. Vamos supor que o site tem um subdirectório "tmp" e que tem dentro um ficheiro novidades.txt. Para abrir o ficheiro usamos:

    $fd = fopen( "tmp/novidades.txt", "r" );
    ...
    ?>

    Note que mesmo que este script seja executado em windows ele irá funcionar. Excelente! Nada melhor que programar com uma linguagem que funciona em vários sistemas operativos sem alterações!
    O segundo parâmetro informa o PHP que o ficheiro deve ser aberto so para leitura, os modos possíveis podem ser:

    r - so leitura, coloca o ponteiro no início do ficheiro
    r+ - leitura e gravação, coloca o ponteiro no início do ficheiro
    w - so gravação, limpa o ficheiro (deixa-o com 0 bytes) e coloca o ponteiro no início do ficheiro. Se o ficheiro não existir, tenta criá-lo.
    w+ - leitura e gravação, limpa o ficheiro (deixa-o com 0 bytes) e coloca o ponteiro no início do ficheiro. Se o ficheiro não existir, tenta criá-lo
    a - so gravação, coloca o ponteiro no final do ficheiro. Se o ficheiro não existir, tenta criá-lo.
    a+ - leitura e gravação, limpa o ficheiro (deixa-o com 0 bytes) e coloca o ponteiro no final do ficheiro. Se o ficheiro não existir, tenta criá-lo

    Existe ainda a opção "b" que pode ser utilizada com os modos (sozinha não funciona!), esta opção indica que o ficheiro deve ser tratado como binário em vez de texto, ou seja, se o programa for lidar com imagens em vez de um ficheiro de texto comum. É de vital importância no windows para ler imagens, ou caso contrário o programa não irá funcionar. Como o Linux e Unix não fazem diferença entre um ficheiro de texto e um binário, essa opção não terá nenhum efeito, portanto, se o seu programa for trabalhar com imagens, não custa nada adicionar esta opção. (programas multiplataforma são excelentes!)

    AVISO: Como no windows (95/98/CE/ME) não existe permissão de acesso a ficheiros os programas funcionarão como desejado, podemos criar ficheiros, acede-los, excluí-los e muito mais. No Linux começam a surgir alguns problemas, normalmente os ficheiros e directórios de um servidor de Internet são de um utilizador e o servidor http (apache, por exemplo) corre como um outro utilizador, o php corre com o mesmo utilizador do servidor http, portanto se este utilizador não tiver permissão para gravar num directório, não será possível criar os ficheiros pelo php, nem alterá-los.

    O terceiro parâmetro é opcional, e se seu valor for 1, o php irá procurar nos directórios informados na configuração "include_path" do php.ini.

    Se a função fopen falhar ao abrir ou ao criar o ficheiro, ela retorna false. Note que se for utilizado o parâmetro "r"(somente leitura) ou "r+" e o ficheiro não existir, a função fopen não irá tentar criá-lo, simplesmente retornará um erro, e mostrará um aviso no browser do utilizador.
    Caso não seja muito bom mostrar esse tipo de erro para o utilizador (toda a gente que vir essa mensagem vai querer ler esse ficheiro directamente no browser), utilize o @ antes da função e confira o resultado:

    $fd = @fopen( "tmp/novidades.txt", "r" ) or die( "ops, avise o webmaster, que está a faltar um ficheiro no servidor");
    ...
    ?>

    Mesmo que tenhas a certeza que este ficheiro está por lá, usa este método, pois nem sempre as coisas são como esperamos.


    Fechar ficheiros

    Depois de aberto ou criado o ficheiro, é sempre bom deixar a mesa arrumada após o serviço, portanto devemos fechar o ficheiro. É muito fácil:

    int fclose( int fp );

    O parâmetro fp é o ponteiro de ficheiro que foi retornado pela função fopen(), no nosso caso $fd. Esta função retorna true se o ficheiro foi fechado e false se não foi possível fechar o ficheiro. O ficheiro precisa ser fechado no mesmo script que o abriu.
    Gamer
    Gamer
    Fundador
    Fundador


    Mensagens : 4166
    Coins : 2018
    Idade : 26
    Sexo : Masculino
    Localização : Na frente do computador

    Trabalhar com ficheiros - Leitura Empty Re: Trabalhar com ficheiros - Leitura

    Mensagem por Gamer Dom Set 18, 2011 10:42 pm

    maaanooo nao to entendendo Trabalhar com ficheiros - Leitura 189994 nenhuma!!
    Sky
    Sky
    Moderador Expert
    Moderador Expert


    Mensagens : 1000
    Coins : 148
    Frase : '' Tudo posso naquele que me fortaleçe. ''
    Sexo : Masculino
    Localização : Sertãozinho - São Paulo

    Trabalhar com ficheiros - Leitura Empty Re: Trabalhar com ficheiros - Leitura

    Mensagem por Sky Qua Set 21, 2011 9:53 pm

    Obrigado por compartilhar!

    Conteúdo patrocinado


    Trabalhar com ficheiros - Leitura Empty Re: Trabalhar com ficheiros - Leitura

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qui maio 09, 2024 1:57 am