downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

fgetcsv> <fflush
[edit] Last updated: Fri, 24 Feb 2012

view this page in

fgetc

(PHP 4, PHP 5)

fgetcLê um caracter do ponteiro de arquivo

Descrição

string fgetc ( resource $handle )

Obtém um caractere de um dado ponteiro de arquivo.

Parâmetros

handle

O ponteiro do arquivo tem de ser válido por uma chamada a fopen() ou fsockopen() (e ainda não fechado por fclose()).

Valor Retornado

Retorna uma string contendo um único caractere lido do ponteiro do arquivo passado por handle. Retorna FALSE em EOF.

Aviso

Esta função pode retornar o booleano FALSE, mas também pode retornar um valor não-booleano que pode ser avaliado como FALSE, como 0 ou "". Leia a seção em Booleanos para maiores informações. Utilize o operador === para testar o valor retornado por esta função.

Exemplos

Exemplo #1 Um exemplo da fgetc()

<?php
$fp 
fopen('algumarquivo.txt''r');
if (!
$fp) {
    echo 
'Não é possivel abrir algumarquivo.txt';
}
while (
false !== ($char fgetc($fp))) {
    echo 
"$char\n";
}
?>

Notas

Nota: Esta função é compatível com dados binários

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fopen() - Abre um arquivo ou URL
  • popen() - Abre um processo como ponteiro de arquivo
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • fgets() - Lê uma linha de um ponteiro de arquivo



fgetcsv> <fflush
[edit] Last updated: Fri, 24 Feb 2012
 
add a note add a note User Contributed Notes fgetc
sfinktah at php dot spamtrak dot org 22-Mar-2011 06:33
To read a single key-press in CLI mode, you can either use ncurses (which will probably require additional modules for PHP) or get nasty with the *nix "/bin/stty" command)

<?php
  
function stty($options) {
     
exec($cmd = "/bin/stty $options", $output, $el);
     
$el AND die("exec($cmd) failed");
      return
implode(" ", $output);
   }

   function
getchar($echo = false) {
     
$echo = $echo ? "" : "-echo";

     
# Get original settings
     
$stty_settings = preg_replace("#.*; ?#s", "", stty("--all"));

     
# Set new ones
     
stty("cbreak $echo");

     
# Get characters until a PERIOD is typed, 
      # showing their hexidecimal ordinal values.
     
printf("> ");
      do {
        
printf("%02x ", ord($c = fgetc(STDIN)));
      } while (
$c != '.');

     
# Return settings
     
stty($stty_settings);
   }

  
getchar();
?>
alex at alexdemers dot me 11-May-2009 10:30
The best and simplest way to get input from a user in the CLI with only PHP is to use fgetc() function with the STDIN constant:

<?php

echo 'Are you sure you want to quit? (y/n) ';
$input = fgetc(STDIN);

if (
$input == 'y')
{
    exit(
0);
}

?>
ktraas at gmail dot com (Kevin Traas) 23-Mar-2009 07:08
I was using command-line PHP to create an interactive script and wanted the user to enter just one character of input - in response a Yes/No question.  Had some trouble finding a way to do so using fgets(), fgetc(), various suggestions using readline(), popen(), etc.  Came up with the following that works quite nicely:

$ans = strtolower( trim( `bash -c "read -n 1 -t 10 ANS ; echo \\\$ANS"` ) );

 
show source | credits | sitemap | contact | advertising | mirror sites